Excel - How to convert US dates and times to UK dates and times

Anonymous
2021-05-14T17:03:30+00:00

Hello

I wonder if I could receive help with the following:

I have a long Excel spreadsheet where the dates and times are in US format and need to be changed to UK format. The problem is that the date and time need to be merged into one cell.

BEFORE HOW IT SHOULD LOOK
06/03/2021 06:PM 23/06/2021 18:00

Sometimes the data is laid out as below:

DATE TIME HOW IT SHOULD LOOK
06/03/21 06:PM 23/06/2021 18:00

Thanks for your help.

Microsoft 365 and Office | Excel | For home | Windows

Locked Question. This question was migrated from the Microsoft Support Community. You can vote on whether it's helpful, but you can't add comments or replies or follow the question.

0 comments No comments
Answer accepted by question author
HansV 462.7K Reputation points MVP Volunteer Moderator
2021-05-14T21:28:56+00:00

That means that the values aren't real dates, but text values that look like dates.

  1. For a range with separate dates in a column:
  • Select the range.
  • On the Data tab of the ribbon, click Text to Columns
  • Click Next> twice.
  • In step 3 of the Text to Columns Wizard, select Date, and select MDY from the drop down.
  • Click OK.
  1. For a range with separate times in a column:
  • Select an empty cell and copy it.
  • Select the range with times.
  • Click the lower half of the Paste button and select Paste Special...
  • Select Add, then click OK.
  1. For a range with dates+times in a column:
  • Select the range.
  • Run the macro listed below.
  • You can discard the macro afterwards.

Sub Text2Date()
    Dim rng As Range
    Dim s As String
    Dim p As Long
    Dim d As String
    Dim t As String
    Dim a() As String
    Application.ScreenUpdating = False
    For Each rng In Selection
        s = rng.Text
        p = InStr(s, " ")
        d = Left(s, p - 1)
        a = Split(d, "/")
        t = Trim(Mid(s, p + 1))
        rng.Value = DateSerial(a(2), a(0), a(1)) + TimeValue(t)
    Next rng
    Selection.NumberFormat = "dd/mm/yyyy hh:nn"
    Application.ScreenUpdating = True
End Sub

Was this answer helpful?

30+ people found this answer helpful.
0 comments No comments
Answer accepted by question author
HansV 462.7K Reputation points MVP Volunteer Moderator
2021-05-16T08:48:31+00:00

I don't use PowerQuery much, so if the following is off, I hope that others will take me to task - criticism is welcome!

Try this:

Click in the column with dates-as-text.

On the Insert tab of the Ribbon, click Table.

Make sure that 'My table has headers' is ticked, then click OK.

On the Data tab of the ribbon, in the Get & Transform group, click 'From Table/Range'.

PowerQuery will automatically recognize the values as date/time and display them in your system date/time format (mine is yyyy-mm-dd hh:mm:ss)

Click Close & Load.

The result is a new table with 'real' date/time values:

You can now apply the desired format:

Was this answer helpful?

10+ people found this answer helpful.
0 comments No comments

45 additional answers

Sort by: Oldest
  1. Anonymous
    2021-05-15T14:54:22+00:00

    Select the range with dates+times.

    Press Alt+F11 to activate the Visual Basic Editor.

    Select Insert > Module.

    There is no immediate need to rename the new module.

    Copy the code from my first reply into the module.

    With the insertion point anywhere in the code (between Sub and End Sub), select Run > Run Macro or press F5.

    Switch back to Excel to inspect the result.

    When you save the workbook, Excel will probably warn you that macros cannot be saved in a macro-free workbook, and ask if you want to save it anyway.

    If you want to be able to run the macro again later on, click No, then save the workbook as a macro-enabled workbook (.xlsm).

    If you don't need the macro anymore, click Yes.

    Hi Hans

    Thanks very much for your help. I managed to do 5 complete sheets. I then switch off the computer for a break. On my return the macro no longer works.

    I have no idea why. I have tried starting a new Excel book, but it still doesn't work.

    Can you shed some light?

    Was this answer helpful?

    0 comments No comments
  2. HansV 462.7K Reputation points MVP Volunteer Moderator
    2021-05-15T15:19:10+00:00

    What exactly is the problem? Do you get an error message when you run the macro? If so, what does it say? Or ...?

    Was this answer helpful?

    0 comments No comments
  3. Anonymous
    2021-05-15T16:49:36+00:00

    Hi Hans

    First of all I want to say a huge thank you. I did 70% of the job in no time at all. After my lunch break, I opened a brand new workbook, then went into Visual Basics and found that there were already a few projects there.

    Because of the time difference, I only saw your email late this afternoon about saving the workbook in XML to retain Macros. I thought I could just open a brand new workbook and install the macro again.

    Basically, I think what I need to do is clean the the Visual Basics of all projects, so that I start on a clean slate and install the Macro. 

    Am I correct?

    I owe you a large drink Hans.

    Was this answer helpful?

    0 comments No comments