Reply
 
LinkBack Thread Tools Search this Thread Display Modes
  #1   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 4
Default Date problem when opening a csv with dates in dd-mm-yyyy format.

When I open a csv with a date in one "cell" excel allways interprets the date
as mm/dd/yyyy if I do it in VBA, but if I open the CSV manually then excel
interprets the date according to my system date settings. How can I tell
excel how to interpret the date within VBA when opening a CSV?

  #2   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 158
Default Date problem when opening a csv with dates in dd-mm-yyyy format.

Hi Jeroen,

I think this is a bit of a bug (foible may be a less controversial word)
in XL2000 - I guess that's what you're using. I don't notice the same
behaviour in XL2003 but I remember it being a real pain for me in XL2000.

You can get round this easily by specifying, when opening, how you want
each column to be interpreted. In the below example I've said columns 1
and 2 should be considered as DMY and column 3 should be MDY.

Sub openfiledates()

Dim myFieldInfo As Variant

myFieldInfo = Array(Array(1, xlDMYFormat), _
Array(2, xlDMYFormat), _
Array(3, xlMDYFormat))

Workbooks.OpenText Filename:="c:\temp\temp.txt", _
DataType:=xlDelimited, _
Comma:=True, _
FieldInfo:=myFieldInfo

End Sub

I hope this helps. My advice is (I'm sure you know but I'll say it
anyway) whenever you can, specify to any suppliers of text files
(clients, other departments etc.) that they use a format such as
DD/MMM/YYY i.e. where the month is written as text. That ensures avoid
any nasty surprises further down the line!!

cya,
Gareth


Jeroen Hofs wrote:
When I open a csv with a date in one "cell" excel allways interprets the date
as mm/dd/yyyy if I do it in VBA, but if I open the CSV manually then excel
interprets the date according to my system date settings. How can I tell
excel how to interpret the date within VBA when opening a CSV?

  #3   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 35,218
Default Date problem when opening a csv with dates in dd-mm-yyyy format.

Just to add to Gareth's reply.

Notice he changed the file name to .txt first (Filename:="c:\temp\temp.txt").

If you leave the extension .CSV, then VBA will ignore your code and do what it
wants (based on its USA centric rules).

(I'd rename the file to .txt and record a macro to get all the fields defined
correctly.)

Then if I get files of the same format, I'd just rerun this macro.


Gareth wrote:

Hi Jeroen,

I think this is a bit of a bug (foible may be a less controversial word)
in XL2000 - I guess that's what you're using. I don't notice the same
behaviour in XL2003 but I remember it being a real pain for me in XL2000.

You can get round this easily by specifying, when opening, how you want
each column to be interpreted. In the below example I've said columns 1
and 2 should be considered as DMY and column 3 should be MDY.

Sub openfiledates()

Dim myFieldInfo As Variant

myFieldInfo = Array(Array(1, xlDMYFormat), _
Array(2, xlDMYFormat), _
Array(3, xlMDYFormat))

Workbooks.OpenText Filename:="c:\temp\temp.txt", _
DataType:=xlDelimited, _
Comma:=True, _
FieldInfo:=myFieldInfo

End Sub

I hope this helps. My advice is (I'm sure you know but I'll say it
anyway) whenever you can, specify to any suppliers of text files
(clients, other departments etc.) that they use a format such as
DD/MMM/YYY i.e. where the month is written as text. That ensures avoid
any nasty surprises further down the line!!

cya,
Gareth

Jeroen Hofs wrote:
When I open a csv with a date in one "cell" excel allways interprets the date
as mm/dd/yyyy if I do it in VBA, but if I open the CSV manually then excel
interprets the date according to my system date settings. How can I tell
excel how to interpret the date within VBA when opening a CSV?


--

Dave Peterson
  #4   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 4
Default Date problem when opening a csv with dates in dd-mm-yyyy forma

Thanks a lot Gareth!
As I'm a beginner at this I would never have come up with this.
Regards,
Jeroen



"Gareth" wrote:

Hi Jeroen,

I think this is a bit of a bug (foible may be a less controversial word)
in XL2000 - I guess that's what you're using. I don't notice the same
behaviour in XL2003 but I remember it being a real pain for me in XL2000.

You can get round this easily by specifying, when opening, how you want
each column to be interpreted. In the below example I've said columns 1
and 2 should be considered as DMY and column 3 should be MDY.

Sub openfiledates()

Dim myFieldInfo As Variant

myFieldInfo = Array(Array(1, xlDMYFormat), _
Array(2, xlDMYFormat), _
Array(3, xlMDYFormat))

Workbooks.OpenText Filename:="c:\temp\temp.txt", _
DataType:=xlDelimited, _
Comma:=True, _
FieldInfo:=myFieldInfo

End Sub

I hope this helps. My advice is (I'm sure you know but I'll say it
anyway) whenever you can, specify to any suppliers of text files
(clients, other departments etc.) that they use a format such as
DD/MMM/YYY i.e. where the month is written as text. That ensures avoid
any nasty surprises further down the line!!

cya,
Gareth


Jeroen Hofs wrote:
When I open a csv with a date in one "cell" excel allways interprets the date
as mm/dd/yyyy if I do it in VBA, but if I open the CSV manually then excel
interprets the date according to my system date settings. How can I tell
excel how to interpret the date within VBA when opening a CSV?


  #5   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 4
Default Date problem when opening a csv with dates in dd-mm-yyyy forma

Thanks for clarifying Dave.
Regards,
Jeroen


"Dave Peterson" wrote:

Just to add to Gareth's reply.

Notice he changed the file name to .txt first (Filename:="c:\temp\temp.txt").

If you leave the extension .CSV, then VBA will ignore your code and do what it
wants (based on its USA centric rules).

(I'd rename the file to .txt and record a macro to get all the fields defined
correctly.)

Then if I get files of the same format, I'd just rerun this macro.


Gareth wrote:

Hi Jeroen,

I think this is a bit of a bug (foible may be a less controversial word)
in XL2000 - I guess that's what you're using. I don't notice the same
behaviour in XL2003 but I remember it being a real pain for me in XL2000.

You can get round this easily by specifying, when opening, how you want
each column to be interpreted. In the below example I've said columns 1
and 2 should be considered as DMY and column 3 should be MDY.

Sub openfiledates()

Dim myFieldInfo As Variant

myFieldInfo = Array(Array(1, xlDMYFormat), _
Array(2, xlDMYFormat), _
Array(3, xlMDYFormat))

Workbooks.OpenText Filename:="c:\temp\temp.txt", _
DataType:=xlDelimited, _
Comma:=True, _
FieldInfo:=myFieldInfo

End Sub

I hope this helps. My advice is (I'm sure you know but I'll say it
anyway) whenever you can, specify to any suppliers of text files
(clients, other departments etc.) that they use a format such as
DD/MMM/YYY i.e. where the month is written as text. That ensures avoid
any nasty surprises further down the line!!

cya,
Gareth

Jeroen Hofs wrote:
When I open a csv with a date in one "cell" excel allways interprets the date
as mm/dd/yyyy if I do it in VBA, but if I open the CSV manually then excel
interprets the date according to my system date settings. How can I tell
excel how to interpret the date within VBA when opening a CSV?


--

Dave Peterson

Reply
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules

Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
change date format from dd/mm/yyyy to mm/yyyy flow23 Excel Discussion (Misc queries) 3 April 4th 23 11:26 AM
Help with date format mm/dd/yyyy vs. dd/mm/yyyy Dream Excel Discussion (Misc queries) 3 September 10th 09 07:33 PM
how do I change date from mm/dd/yyyy to dd:mm:yyyy format in Excel Jack Wilson New Users to Excel 4 July 18th 06 01:57 PM
opening excel file - date format problem: DD/MM/YYYY vs MM/DD/YYYY yung Excel Programming 2 March 18th 05 12:50 PM
Having problem getting date into format: yyyy/mm/dd Andrew[_13_] Excel Programming 1 July 15th 03 09:49 PM


All times are GMT +1. The time now is 11:16 AM.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Copyright ©2004-2024 ExcelBanter.
The comments are property of their posters.
 

About Us

"It's about Microsoft Excel"