ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   Change format DATE language (https://www.excelbanter.com/excel-programming/400013-change-format-date-language.html)

Animal via OfficeKB.com

Change format DATE language
 
Hi,

I have two problems:

1. I'm doing a general template. All the workstations are having the default
language for the format DATE set to Swedish, but I have to have it in English.
I have created a custom list containing "jan, feb, mar, apr, may, jun, jul,
aug, sep, oct, nov, dec" on my computer but this does not apply when I change
computer. When I for example switch computer and do an autofill it comes out
in Swedish.
How can I secure that I get the DATE format series in english?

2. The second problem continues in this problem, but can maybe be solved if
the first problem is, or? I have to do some calulations with a DATE variable,
to basically add a month to a variable.

Here is my code:

Dim reportdateOk As Date

reportdateOk = Range("ReportYear") & "-" & Range("ReportMonth") ex: (2007-
05-01)
reportdateOk2 = DateAdd("m", 1, reportdateOk)
ex: (2007-06-01)

This workes perfectly if I use Swedish months or months that are the same in
the swedish language (all months except for "maj" and "okt"), but not when I
use English months, because the variable reportDateOK is a DATE-variable and
it is programmed for Swedish.

Can someone please help me?

Thanks in advance!
/Animal

--
Message posted via OfficeKB.com
http://www.officekb.com/Uwe/Forums.a...mming/200710/1


Ronald Dodge[_2_]

Change format DATE language
 
First and foremost, be sure to be using the "Date" data type to assign to
date variables, so as all dates (whole number) and times (decimal number)
will be serialized.

From there, you can then use the "VBA.Format" function to return the format
of the date that you need. If you use the named date format, it will go by
what ever date format is setup on that system such as the following line of
command.

strDateOK = VBA.Format(reportdateOK,"Medium Date")

To see the different date/time format settings on a particular system, goto
Control Panel, Regional Settings.

Generally speaking, when I create variables, I explicitly assign them to
what ever type variable I plan on using it as, and I also set the first 3
letters of the variable name accordingly, such as the following

Dim dteReportDateOK as Date

This naming then allows for people to know what type of variable it is, and
more or less what it's for.

--

Sincerely,

Ronald R. Dodge, Jr.
Master MOUS 2000

"Animal via OfficeKB.com" <u33413@uwe wrote in message
news:7a38904dbc9ef@uwe...
Hi,

I have two problems:

1. I'm doing a general template. All the workstations are having the
default
language for the format DATE set to Swedish, but I have to have it in
English.
I have created a custom list containing "jan, feb, mar, apr, may, jun,
jul,
aug, sep, oct, nov, dec" on my computer but this does not apply when I
change
computer. When I for example switch computer and do an autofill it comes
out
in Swedish.
How can I secure that I get the DATE format series in english?

2. The second problem continues in this problem, but can maybe be solved
if
the first problem is, or? I have to do some calulations with a DATE
variable,
to basically add a month to a variable.

Here is my code:

Dim reportdateOk As Date

reportdateOk = Range("ReportYear") & "-" & Range("ReportMonth") ex:
(2007-
05-01)
reportdateOk2 = DateAdd("m", 1, reportdateOk)
ex: (2007-06-01)

This workes perfectly if I use Swedish months or months that are the same
in
the swedish language (all months except for "maj" and "okt"), but not when
I
use English months, because the variable reportDateOK is a DATE-variable
and
it is programmed for Swedish.

Can someone please help me?

Thanks in advance!
/Animal

--
Message posted via OfficeKB.com
http://www.officekb.com/Uwe/Forums.a...mming/200710/1




Animal via OfficeKB.com

Change format DATE language
 
Hi again,

I think I understand what you mean but I can't get it to work, maybe I
explained it to you weared, let me try again:

1. The default system settings on all computers are set to Swedish language.
2. Cells on my worksheet:

StartDate 2006-10-03 This is DATE-format, in Swedish
language YYYY-MM-DD
EndDate 2007-11-30 This is DATE-format, in Swedish
language YYYY-MM-DD

ReportMonth May This is choosen from a list, and the
format is General.
ReportYear 2007 This is choosen from a list, and
the format is General.

3. My code:

Dim dteReportDateOk As Date

dteReportDateOk = Range("ReportYear") & "-" & Range("ReportMonth") (
output = 2007-05-01)
ReportDateOk2 = DateAdd("m", 1, dteReportDateOk)
( output = 2007-06-01)

If reportdateOk2 = Range("StartDate") then..........

This code givs me an error because the ReportMonth (May) is in english, but
when it is in Swedish it workes just fine.
So I believe that I have to change the system settings before I do this code
and change it back again, but how do I do that?

Thanks in advance,
/Anita

--
Message posted via OfficeKB.com
http://www.officekb.com/Uwe/Forums.a...mming/200710/1



All times are GMT +1. The time now is 03:39 PM.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com