date changes mysteriously when copied

D

digicat

I use a macro to copy the date from the input form (on sheet1) to the
table on sheet2 with this code:

Dim Row As Integer
Row = 3
Do While Worksheets("SHEET2").Cells(Row, "A") <> ""
Row = Row + 1
Loop
Worksheets("SHEET2").Cells(Rij, "B") =
Worksheets("SHEET1").Range("C3")
--more code follows to copy the other cells form the input form to the
table--

Mysteriously the date changes when copied to sheet2:
e.g. 20-02-2006 becomes 21-02-2010.
Exactly 4 years is added: 4 x 365 + 1 (leapday)
When I put format to "standard" the problem does not occur.

Can the reason be "Dim Rij As Integer"?
How do I solve the problem?
 
R

Roger Govier

Hi
It sounds as though your sheet is set to use the 1904 date system.
Tools>Options>Calculation>uncheck 1904 date system
 
D

Dave Peterson

Just to add to Roger's response...

One workbook was using a base year of 1900 and the other was using 1904.
(tools|options|calculation tab|1904 date system)

One way to add those four years back is to find an empty cell, put 1462 into
that cell.

Copy that cell.

Select your range that contains the dates. Edit|PasteSpecial|click Add (in the
operation box).

You may have to reformat the cell as a date (mine turned to a 5 digit number).
But it should work.

You may want to do it against a copy...just in case.

(I'm not sure which one you'll fix. You may want to edit|pastespecial|click
subtract.)

Most windows users use 1900 as the base date. Mac users (mostly??) use 1904 as
the base date.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top