Konverter datoer fra 1904-datosystemet

1904 datosystemet er et alternativ til Excels standarddatosystem, der tager udgangspunkt i 1-1-1900. !904 datosystemet tager udgangspunkt i 2-1-1904. Systemet anvendes typisk i tilfælde, hvor samme regneark skal kunne anvendes både på pc og mac, men kan også anvendes med fordel i nogle sammenhænge, selv om regnearket kun skal anvendes på en pc. For eksemple kan 1904-systemet vise negative tider, hvilket 1900-datosystemet ikke kan. Se artiklen Dato- og tidsberegninger

Man skifter system ved at vælge Funktioner - Indstillinger. I fanebladet beregning sættes flueben i 1904-datosystem. Nu kan negative datoer og klokkeslæt vises. Vær dog opmærksom på, at allerede indtastede datoer nu ændrer sig. For eksempel vil 19-04-2005 blive til 20-04-2009.
Der lægges altså fire år og én dag til alle datoer. Dette kan selvfølgelig være uhensigtsmæssigt, da alle datoer, der findes i arket bliver forkerte, mens alle datoer, der senere indtastes, bliver rigtige. Hvis man afspiller nedenstående makro efter at have skiftet datosystem, sættes alle datoer i det aktive ark til den dato, de var før skiftet.

Sub DatoRetur()
    For Each c In ActiveSheet.UsedRange.Cells
        If IsDate(c.Value) Then
            c.Value = c.Value - 1462
        End If
    Next c
End Sub

 

Hvis datoer skal rettes i hele projektmappen, skal den afspilles i hvert ark for sig - eller tilpasses, så den gennemløber alle ark, fx:

Sub DatoReturAlle()
    For Each s in ActiveWorkbook.Sheets
    s.Activate   
        For Each c In ActiveSheet.UsedRange.Cells
            If IsDate(c.Value) Then
                c.Value = c.Value - 1462
            End If
        Next c
    Next s
End Sub


- Til top -
- Tilbage til makroer -
- Tilbage til Excel -