I am working with a column of data which contains a date/time stamp of an event. The printed form is in US format, as follows:
12/25/2014 11:00 AM
The cells are formatted as "General". I'm looking to convert the column into a Date / Time field for ease of filtering and searching. Thus far the only way I've been able to convert the text is to use "Text to Columns" and import the columns delimited by a Space, but this hasn't gotten me exactly what I want as it imports the date perfect, but the time is still text and in another column, which isn't pretty.
Is there an easier way? Thanks in advance
Since these values are apparently text strings, you won't be able to change the values by formatting. Excel stores dates (and times) as days and fractions of a day since 1/1/1900. You have, I believe, four non-VBA options:
Change the data before you enter into your worksheet, to be in the same format as your Windows Regional Settings short date (perhaps DMY?)
Change your Windows Regional Settings short date format to match that of the data you are importing.
Split the data using Text to Columns as you have been, then combine the two fields with an addition. e.g.
Original data in A1
Split data in A1:B1
Combine -- C1: =A1+B1
Copy C1; PasteValues (C1), then delete A1:B1
Use a formula to separate the different segments. The following assumes your Windows Regional settings AM/PM designation is, indeed, AM/PM, otherwise the formula would have to also account for that. Also, if the format is mm/dd/yyyy hh:mm AM/PM then the formula could be simplified. The formula below assumes the format is m/d/yyyy h:mm AM/PM and that AM/PM works in your locale.
=DATE(
MID(A1,FIND("/",A1,4)+1,4),
LEFT(A1,FIND("/",A1)-1),
MID(A1,FIND("/",A1)+1,FIND("/",A1,4)-FIND("/",A1)-1)
)
+TRIM(MID(A1,FIND(":",A1)-2,9))
You should try custom formatting of date and time.
If working with Google spreadsheet see this link.
If working with excel see this link.
Related
So I have a pretty long column with name dates and hours, like this:
14/01/2017 03:30
(They are DD/MM/YYYY HH:MM)
I need to get the month number and show it as text, like January, February, and so on.
If I format the destination cell as 'MMM' all the column cells show January even if the given month is 2, 3, or let's say 12. I also tried the formula =TEXT(L2,"mmmm") (since the given info come from column F.
Any ideas?
sounds like your date and time are stored as text and not in excels serial date format. You can test this by changing the format of the cell to general and seeing if anything happens if nothing changes then its text. another way would be to use the formula =istext(A1) where A1 is a cell with a date in it.
Now ASSUMING you do have dates in text format, I would suggest converting them to excels date serial. There are numerous ways of doing this. I will show you one way.
This will strip each component of the text out and then recombine it. We will assume your date in is A1
Strip out the year
=MID(A1,7,4)
Strip out the month
=MID(A1,4,2)
Strip out the day
=LEFT(A1,2)
Now to recombine it:
=DATE(MID(A1,7,4),MID(A1,4,2),LEFT(A1,2))
That will give you the date in an integer format that excel can then turn around and display as needed.
In order not to lose the time component you should strip that part off as well and combine it with the date. Remember the date is an integer, and the time is everything after the decimal. Think of time as a fraction of a day.
To get time out use:
=RIGHT(A1,5)
and to convert it to excel time:
=TIMEVALUE(RIGHT(A1,5))
and to get the two together, simply add:
=DATE(MID(A1,7,4),MID(A1,4,2),LEFT(A1,2)+TIMEVALUE(RIGHT(A1,5))
The key part to this whole thing is you will need to format that cell to display what you want. you can either choose a preformatted style from the drop down menu, or you can apply custom formatting. Setting the custom format to MMMM should display just the full name of the month.
IF you actually need the text of the month and not just the format, then you could use the formula from your question:
=TEXT(<insert appropriate formula from above>,"mmmm")
Try using MID to get the month only, then TEXT():
=TEXT(MID(A1,SEARCH("/",A1)+1,2),"MMMM")
Is it possible to convert the standard excel format (MM/DD/YYYY) to just the month? I have column B that has a date format &column V where I have the month. I have check the internet/stack overflow, but have only found conversions for changing the format of the date.
you mean like the MONTH() formula?:
=MONTH(B1)
If the date is stored as an excel serial, to display just the month without losing the potential other information such as year, day, and time that might be stored with it, you are usually better off reformatting the display of the cell.
If you set the format of the cells to General and the numbers change you know you have your date in an Excel format. If they do not change you have them as a string.
Select custom format for the cell format and go to the area when your can type in display formats and set it either to
m or mm - for numbers to be displayed. The later will give you a proceeding 0 for single digit months.
mmm - for the first three letters of the month.
mmmm - for the full spelling of the month.
If you need to make comparisons of the month from a full date, use the formula macro man listed in a manner like:
=Month(B1)=Month(V1)
That will display true if the months for the dates in both A1 and V1 are the same.
I'm cleaning data in Excel that has a date column with mm/dd/yyyy values mixed with dd/mm/yyyy values where the former are date formatted and the latter are general formatted. The way I'm doing this is to filter out everything that's date formatted (ie: shows up in the filter as 1964 -> March -> 27, etc... at various levels), leaving only those that are general formatted (shows up in the filter as as 27/03/1964). When I do this, I find that there are still date-formatted cells visible. I'm wondering why this is? Is it a consequence of how the filter works or how Excel reads date values?
I can't comment, as I don't have a rating of over 50.
I had a similar issue that you had, and realised that my dates were actually formatted as text. Setting the dates to a YYYY-MM-DD format, the cells wouldn't change unless I double clicked the cell, then clicked off of it.
I have a csv that contains a list of dates, once imported into Excel they are in 2 different formats. How can I get them all in the same format?
Example:
01/23/2012
01/26/2012
40910
41031
You probably have a BIG issue with your file!
Probably, Excel is recognizing dates as "dd/mm/yyyy" but your data is "mm/dd/yyyy" formatted.
So, your numbers are really dates (just format, as #t.thielemans suggested). But are incorrectly parsed - month and day are switched!
Solution (assuming your dates are on A:A column):
To convert text to date:
=DATE(RIGHT(A1;4);LEFT(A1;2);MID(A1;4;2))
To correct day/month:
=DATE(YEAR(A1);DAY(A1);MONTH(A1))
Detect whether cell has date (dates are numbers, in Excel) or text:
=ISNUMBER(A1)
Finally, all combined within one formula:
=IF(ISNUMBER(A1);DATE(YEAR(A1);DAY(A1);MONTH(A1));DATE(RIGHT(A1;4);LEFT(A1;2);MID(A1;4;2)))
Just drag last formula from first row to end of your data and then format it as you wish (see #t.thielemans solution).
Select your data column and make sure they're highlighted. Go to Home>Number and select Custom and enter mm/dd/yyyy. You can also change the layout to one you want (mm-dd-yyyy/mmddyyyy/dd-mm-yyyy/...)
I have been given an excel file with dates in a column for about 17000 rows. The problem here is that the dates are not reliable and the cells have varying formats. Some are formatted as plain text, some are in the "general" format, yet others are in one of several available date formats. In one case, I even found a date in a cell formatted as mm/dd/yyyy yet the date is showing up as 20/05/1989.
The only thing consistent about the dates is that they are actually date-first and month-second to the human reader, irrespective of whatever the format of the cell is. Another things is that the date separator isn't consistently used, some dates have the hyphen, some have the slash and yet others use the dot as the separator.
I intend to add another column next to the column with the dates, and have this column formatted as pure text. Now if I use the formula =TEXT() then this would of course give me the serial (excel) date.
Is there a way to get these dates as text, using VBA if necessary?
If I understand you correctly, you want to get a text version of what is displayed in the Excel sheet. Easy way to do this is save the sheet (or just the column in another sheet) as a Formatted Text (Space delimited)(*.prn) file. When you reopen the file, it will be treated as an importable text file.
Please try this formula across and advice.
=DAY(A1)&"-"&MONTH(A1)&"-"&YEAR(A1)
Regards
Shiva