I have a large imported csv file containing American Dates in a column. I want to change these dates to UK format (dd/mm/yyyy)
using a code. The problem is the US dates are in both "mm/dd/yyyy"
and "m/dd/yyyy"
format- the latter of which does not respond to any of the "clickable" options in excel- including the "Text to Columns" procedure. Is there a code which when run in the adjacent column will do the conversion?
Click on the "Date" option in the category list on the left side of the Format Cells dialog box. Select the date style you want from the list of types. Preview the formatting option in the Sample section above the list. When you see the formatting you want, click the "OK" button to apply it and close the dialog box.
You will need to change the number format (Format Cells) in order to display a proper date. For example: =DATE(C2,A2,B2) combines the year from cell C2, the month from cell A2, and the day from cell B2 and puts them into one cell as a date. The example below shows the final result in cell D2.
Note: Default date formats in Excel are affected by the Windows regional settings on your computer. To use a different locale, go to the Microsoft website for steps on how to open the control panel and change your regional settings.
First, pick the cells that contain dates, then right-click and select Format Cells. Select Custom in the Number Tab, then type 'dd-mmm-yyyy' in the Type text box, then click okay.
You can also use the TEXT()
function quite easily (Note: source data must be an excel date value)
TEXT(value, format_text)
where value
is the reference cell and format_text
is how you want to format the text- in your case dd/mm/yyyy.
Assuming:
A1 = 3/17/2013
A2 = 12/27/2013
In B1 & B2 simply input:
B1 = TEXT(A1, "dd/mm/yyyy")
B2 = TEXT(A2, "dd/mm/yyyy")
and the result should be
A B
3/17/2013 17/03/2013
12/27/2013 27/12/2013
Hope that helps.
UPDATED SUGGESTION IF WORKING WITH TEXT:
Split the string using mid()
, left()
and right()
functions then check to see if the month mm is 1 or 2 characters long using the LEN()
function. Finally concatenatr the string together using the & and / operators.
Try pasting this in B1, it should work fine:
=MID(A1,FIND("/",A1,1)+1,2)&"/"&IF(LEN(LEFT(A1,FIND("/",A1)-1))=1,0&LEFT(A1,FIND("/",A1)-1),LEFT(A1,FIND("/",A1)-1))&"/"&RIGHT(A1,4)
You can use the DATEVALUE function to convert the date strings into Excel data values, and then create a custom date format to display the date values in U.K. format.
Assuming that the first date string is in cell A1, the following function call will turn the string into a date value.
=DATEVALUE(A1)
You can create the custom format dd/mm/yyyy;@
by right-clicking on the cell, choosing Format Cells, Number, Custom and entering the format in the Type field.
Working with date values instead of date strings will allow you to change the displayed format without having to do string operations to rearrange the date elements. It will also make it possible to do date arithmetic, should that need arise.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With