Home |
Search |
Today's Posts |
#1
Posted to microsoft.public.excel.programming
|
|||
|
|||
VBA: Copy a date and paste as text
Cell A1 contains a date formatted as follows: 11/4/2009
I want to write a VBA procedure that will read the date in A1 and insert it as text in B1 in the format 2009-11-04. I can accomplish this easily in excel by inputting the following function into B1: =TEXT(A1,"yyyy-mm-dd"). I would then copy the result and Paste Special Values to get the intended result of text that reads 2009-11-04. I tried to replicate this in VBA using the following statement: Range("B1").Value = worksheetfunction.Text(Range("A1"), "yyyy-mm-dd") However, the value returned in B1 is still formatted as a date and appears as 11/4/2009. Can anyone help with this? This is a simple example but I want to use this code as part of a longer procedure. Thanks! |
#3
Posted to microsoft.public.excel.programming
|
|||
|
|||
VBA: Copy a date and paste as text
Hi Aaron,
Don's answer reformats the date using the number format. Perhaps that is all that you require. However, if you really want the result as text in lieu of a date then you need to format the cell first as text because Excel interprets dates entered as y/m/d as real dates when entered in a cell formatted to the default General fromat. Also the Format function is the VBA equivalent of worksheet function TEXT. Range("B1").NumberFormat = "@" Range("B1") = Format(Range("A1"), "yyyy-mm-dd") -- Regards, OssieMac "Aaron Rubinstein" wrote: Cell A1 contains a date formatted as follows: 11/4/2009 I want to write a VBA procedure that will read the date in A1 and insert it as text in B1 in the format 2009-11-04. I can accomplish this easily in excel by inputting the following function into B1: =TEXT(A1,"yyyy-mm-dd"). I would then copy the result and Paste Special Values to get the intended result of text that reads 2009-11-04. I tried to replicate this in VBA using the following statement: Range("B1").Value = worksheetfunction.Text(Range("A1"), "yyyy-mm-dd") However, the value returned in B1 is still formatted as a date and appears as 11/4/2009. Can anyone help with this? This is a simple example but I want to use this code as part of a longer procedure. Thanks! . |
#4
Posted to microsoft.public.excel.programming
|
|||
|
|||
VBA: Copy a date and paste as text
OssieMac,
That's exactly what I was looking for. Thanks for explaining... makes sense now! Aaron |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
Similar Threads | ||||
Thread | Forum | |||
Date changes from copy to paste | Excel Discussion (Misc queries) | |||
Copy text from cell and paste it in a separate text box (contents tobe linked) | Excel Programming | |||
Copy and Paste + erasing date | Excel Programming | |||
date copy paste should be very easy | Excel Discussion (Misc queries) | |||
Date copy, Paste error | Excel Discussion (Misc queries) |