Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Antal hele år mellem to datoer

101 views
Skip to first unread message

Kurt Hansen

unread,
Feb 24, 2018, 6:49:57 AM2/24/18
to
Jeg bruger Excel 2013 for Mac på engelsk og har brug for en
formel/funktion der beregner en persons alder på en bestemt dato ud fra
fødselsdatoen.

Jeg har googlet meget, men forvirringen er total. Mange af de funktioner
der refereres til, findes åbenbart ikke i min version, f.eks. "Days".
Her har jeg kun "Day" og "Day360" til rådighed.

Hvis jeg har en fødselsdato i A1 og en ønsket dato i B1, så vil jeg bare
gerne vide hvor mange år vedkommende er i et helt tal.

Eksempel:
Født 8/7/1852
Alder pr. 30/4/1875
--
Venlig hilsen
Kurt Hansen

Hans Kjaergaard

unread,
Feb 24, 2018, 7:06:52 AM2/24/18
to
On Sat, 24 Feb 2018 12:49:56 +0100, Kurt Hansen <ku...@invalid.dk>
wrote:
Prøv fårst i et tomt ark at skrive 8/7/1852 i A1 og 8/7/1952 i B2,
formater disse 2 celler som dato og se om de ser enes ud rent bortset
fra datoen, hvis den ene er højrestillet og den ande er venstrestillet
skal du først slås med at få datoer fra før 1904 til at virke som
datoer i excel.


/Hans

Kurt Hansen

unread,
Feb 24, 2018, 8:31:47 AM2/24/18
to
Jeg indsætter begge værdier i et tomt ark i A1 og B1. Jeg markerer dem
begge og formaterer dem som custom dato dd/mm/yyyy, men det ændrer ikke
på udseendet. De står stadig som 8/7/1852 og 30/4/1875.

Hvis jeg manuelt ændrer til 08/07/1852 og 30/04/1875 og checker at
datoformatet stadig er dd/mm/yyyy, så står de i et ensartet format.

Hans Kjaergaard

unread,
Feb 24, 2018, 8:44:51 AM2/24/18
to
Du kan også bare overgive dig og indse at excel ikke kan bruge dato
formatering der hvor du har brug for det nemlig før 1900/1904, træls
men sådan er excel og flere andre regneark, og databaser for den sags
skyld også.

Der er gjort forskellige forsøg på at afhjælpe dette problem, et
eksempel er http://www.exceluser.com/formulas/earlydates.htm Google
kan nok finde flere.


/Hans

Hans Kjaergaard

unread,
Feb 24, 2018, 8:47:40 AM2/24/18
to
On Sat, 24 Feb 2018 14:31:46 +0100, Kurt Hansen <ku...@invalid.dk>
wrote:

>> Prøv fårst i et tomt ark at skrive 8/7/1852 i A1 og 8/7/1952 i B2,
>> formater disse 2 celler som dato og se om de ser enes ud rent bortset
>> fra datoen, hvis den ene er højrestillet og den ande er venstrestillet
>> skal du først slås med at få datoer fra før 1904 til at virke som
>> datoer i excel.
>
>Jeg indsætter begge værdier i et tomt ark i A1 og B1. Jeg markerer dem
>begge og formaterer dem som custom dato dd/mm/yyyy, men det ændrer ikke
>på udseendet. De står stadig som 8/7/1852 og 30/4/1875.
Du fangede ikke at jeg skrev 8/7/1952 og ikke 8/7/1852, hundrede år
til forskel, men hvad betyder det mellem venner ? ingenting, men i
excel betyder det en del.


/Hans

Bertel Lund Hansen

unread,
Feb 24, 2018, 10:05:38 AM2/24/18
to
Hans Kjaergaard skrev:

> Du kan også bare overgive dig og indse at excel ikke kan bruge dato
> formatering der hvor du har brug for det nemlig før 1900/1904, træls
> men sådan er excel og flere andre regneark, og databaser for den sags
> skyld også.

Jeg prøvede lige Calc i OpenOffice version 3. Det håndterer
datoerne korrekt og beregner også forskellen korrekt. Det samme
gælder LibreOffice version 5.

--
/Bertel

Hans Kjaergaard

unread,
Feb 24, 2018, 10:45:08 AM2/24/18
to
On Sat, 24 Feb 2018 16:05:38 +0100, Bertel Lund Hansen
<gade...@lundhansen.dk> wrote:

>Jeg prøvede lige Calc i OpenOffice version 3. Det håndterer
>datoerne korrekt og beregner også forskellen korrekt. Det samme
>gælder LibreOffice version 5.
Læs her:
https://help.libreoffice.org/Calc/Date_and_Time_Functions
*****************************
Dates are calculated as offsets from a starting day zero. You can set
the day zero to be one of the following:

Date base Use
'12/30/1899' (default)
'01/01/1900' (used in former StarCalc 1.0)
'01/01/1904' (used in Apple software)
*****************************
og her:
https://wiki.openoffice.org/wiki/Documentation/How_Tos/Calc:_Date_%26_Time_functions#Date_and_Time_overview
*****************************
In Calc, dates and times are represented by numbers. For example the
number 39441 may represent the date 25Dec07. We may enter 39441 in a
cell, and then (selecting Format - Cells...) choose a date format to
display the number as a date.


Although a number representing a date / time is the same as any other
number (except that we choose to display it as a date or time) it may
be helpful to use the term 'date-time serial number'. The date-time
serial number is simply the number of days that have passed since a
set starting date. The default (normal) starting date is 30 December
1899; choose Tools - Options - OpenOffice.org Calc - Calculate to
change this to 1 January 1904 for Apple software, or 1 January 1900
for old StarCalc 1.0 software if necessary.
*****************************

Prøv igen med datoer ældre end 1899, jf overnævne citater skulle det
ikke virke.


/Hans

Kurt Hansen

unread,
Feb 24, 2018, 10:56:12 AM2/24/18
to
Hvordan skal cellerne være formateret? Hvis jeg indsætter "8/7/1852" i
A1, så står der 08/07/52 i feltet og 08-07-1852 i formellinjen. Hvordan
den finder ud af at det drejer sig om 1800-tallet, er en gåde for mig.

Okay, jeg kopierer og indsætter følgende i A1: 8/7/1852 og 30/4/1875 i
B1, så giver resultatet i C1 (ved =A1-B1/365) en dato 01-01-52. Det
forstår jeg ikke meget af.

Jeg er bestemt indstillet på at have OO kørende ved siden af for at
beregne alderen, men gennem +20 år har jeg arbejdet så meget med Excel,
at en komplet konvertering til OO forekommer mig at være en stor (og
håbløs) opgave.

Bertel Lund Hansen

unread,
Feb 24, 2018, 11:07:40 AM2/24/18
to
Hans Kjaergaard skrev:

> Prøv igen med datoer ældre end 1899, jf overnævne citater skulle det
> ikke virke.

Jeg prøvede med dit eksempel, og der var 1852 et af årene. Jeg
prøver nogle flere eksempler.

--
/Bertel

Bertel Lund Hansen

unread,
Feb 24, 2018, 11:24:46 AM2/24/18
to
Hans Kjaergaard skrev:

> Prøv igen med datoer ældre end 1899, jf overnævne citater skulle det
> ikke virke.

Dato 1 Dato 2 Dage År (dage/365)
1823-01-01 1837-08-05 5330 14,6
1867-09-05 1904-03-03 13328 36,52

0 indsat i et felt med datoformat giver: 1899-12-30

Jeg tror bare den regner nedad udfra det fastsatte nulpunkt.
Jeg har dog ikke kontrolleret om tallene er præcis korrekte.
Det gør jeg måske senere ved hjælp af Python der beregner
alle tænkelige datoer som om der altid er brugt vores
nuværende kalender.

--
/Bertel

Bertel Lund Hansen

unread,
Feb 24, 2018, 11:26:48 AM2/24/18
to
Kurt Hansen skrev:

> Hvordan skal cellerne være formateret?

Du bruger standardformatet. Det er med tocifrede årstal, og så
kan du ikke se hvilket århuindrede der er tale om, men det
bagvedliggende tal bestemmer det.

Hvis du vælger datoformatet yyyy-mm-dd, kan du se den rigtige
dato.

> Okay, jeg kopierer og indsætter følgende i A1: 8/7/1852 og 30/4/1875 i
> B1, så giver resultatet i C1 (ved =A1-B1/365) en dato 01-01-52. Det
> forstår jeg ikke meget af.

Prøv at formatere C1 som tal.

--
/Bertel

Hans Kjaergaard

unread,
Feb 24, 2018, 11:37:17 AM2/24/18
to
On Sat, 24 Feb 2018 16:56:11 +0100, Kurt Hansen <ku...@invalid.dk>
wrote:

>Hvordan skal cellerne være formateret? Hvis jeg indsætter "8/7/1852" i
>A1, så står der 08/07/52 i feltet og 08-07-1852 i formellinjen. Hvordan
>den finder ud af at det drejer sig om 1800-tallet, er en gåde for mig.
Formater cellerne til dd-mm-åååå
Ser ud til at der kan regnes med negative datoer og nok også tid,
meget interessant.

>Okay, jeg kopierer og indsætter følgende i A1: 8/7/1852 og 30/4/1875 i
>B1, så giver resultatet i C1 (ved =A1-B1/365) en dato 01-01-52. Det
>forstår jeg ikke meget af.
Prøv i C1 at skrive =(A1-B1)/365, og formater cellen som nummer, det
virker hos mig, dog er der vist lidt afrundings bøvl men vi er tæt på:
08-07-1952 minus 08-07-1852 giver 100,0657534247 år.

>Jeg er bestemt indstillet på at have OO kørende ved siden af for at
>beregne alderen, men gennem +20 år har jeg arbejdet så meget med Excel,
>at en komplet konvertering til OO forekommer mig at være en stor (og
>håbløs) opgave.
Det er en lidt anden måde at gribe tingene an på, men hvis jeg skulle
starte idag ville jeg ikke vælge excel men derimod OO eller
LibreOffice da der er meget mere frihed til macro programmering, men
kommer man fra excel og skal igang med en af de andre
regnearksprogrammer er kurven meget stejl og stort set alt skal gøres
på en anden måde lige så snart vi kommer ud over de mest almindelige
ting.


/Hans

Bertel Lund Hansen

unread,
Feb 24, 2018, 12:54:36 PM2/24/18
to
Hans Kjaergaard skrev:

> Prøv i C1 at skrive =(A1-B1)/365, og formater cellen som nummer, det
> virker hos mig, dog er der vist lidt afrundings bøvl men vi er tæt på:
> 08-07-1952 minus 08-07-1852 giver 100,0657534247 år.

Det er måske ikke afrundingsbøvl, men snarere skudårsbøvl?
Man kommer lidt tættere på ved at dividere med 365,25, men til
aldersberegninger er det jo ligegyldigt.

--
/Bertel

Bertel Lund Hansen

unread,
Feb 24, 2018, 1:04:00 PM2/24/18
to
Hans Kjaergaard skrev:

> virker hos mig, dog er der vist lidt afrundings bøvl men vi er tæt på:
> 08-07-1952 minus 08-07-1852 giver 100,0657534247 år.

OpenOffice Calc har funktionen years():

=years(08-07-1852;08-07-1952;0)
giver 100

0 betyder at årstallene trækkes fra hinanden.
1 ville betyde at der beregnes antal hele år - i dette tilfælde
er det også 100, men sæt startdatoen til 10/7, så giver det kun
99.

--
/Bertel

Kurt Hansen

unread,
Feb 25, 2018, 12:24:50 AM2/25/18
to
Den 24/02/2018 kl. 17.37 skrev Hans Kjaergaard:
> On Sat, 24 Feb 2018 16:56:11 +0100, Kurt Hansen <ku...@invalid.dk>
> wrote:
>
>> Hvordan skal cellerne være formateret? Hvis jeg indsætter "8/7/1852" i
>> A1, så står der 08/07/52 i feltet og 08-07-1852 i formellinjen. Hvordan
>> den finder ud af at det drejer sig om 1800-tallet, er en gåde for mig.

> Formater cellerne til dd-mm-åååå
> Ser ud til at der kan regnes med negative datoer og nok også tid,
> meget interessant.
[klip]> Prøv i C1 at skrive =(A1-B1)/365, og formater cellen som nummer, det
> virker hos mig, dog er der vist lidt afrundings bøvl men vi er tæt på:
> 08-07-1952 minus 08-07-1852 giver 100,0657534247 år.

Her er to datoer fra min indtastningsprojekt:
Født 04-11-1844
Viet 05-05-1877
Alder/resultat: -33 år

Det kan jo ikke passe. Personen fyldte først 33 år den 04-11-1877

Bertel Lund Hansen

unread,
Feb 25, 2018, 2:00:10 AM2/25/18
to
Kurt Hansen skrev:

> Her er to datoer fra min indtastningsprojekt:
> Født 04-11-1844
> Viet 05-05-1877
> Alder/resultat: -33 år

Når jeg indsætter de datoer i OpenOffice-Calc og dividerer
forskellen med 365, får jeg:

32,520548

Hvis dit regneark afrunder det til heltal, står der 33. Prøv at
sætte visning til 4 decimaler og se hvad der så står.

Har dit regneark en funktion der hedder years()?

=YEARS(A1;B1;0)

giver 32. A1 indeholder startdatoen.

--
/Bertel

Kurt Hansen

unread,
Feb 25, 2018, 5:02:58 AM2/25/18
to
Den 25/02/2018 kl. 08.00 skrev Bertel Lund Hansen:
> Kurt Hansen skrev:
>
>> Her er to datoer fra min indtastningsprojekt:
>> Født 04-11-1844
>> Viet 05-05-1877
>> Alder/resultat: -33 år
>
> Når jeg indsætter de datoer i OpenOffice-Calc og dividerer
> forskellen med 365, får jeg:
>
> 32,520548
>
> Hvis dit regneark afrunder det til heltal, står der 33. Prøv at
> sætte visning til 4 decimaler og se hvad der så står.

Ok, det virker. Tak.

> Har dit regneark en funktion der hedder years()?
>
> =YEARS(A1;B1;0)
>
> giver 32. A1 indeholder startdatoen.

Jeg kører på dansk og funktionen hedder derfor ÅR.

=ÅR(A1;B1;0) giver imidlertid fejl 508.

Bertel Lund Hansen

unread,
Feb 25, 2018, 10:01:20 AM2/25/18
to
Kurt Hansen skrev:

>> Hvis dit regneark afrunder det til heltal, står der 33. Prøv at
>> sætte visning til 4 decimaler og se hvad der så står.

> Ok, det virker. Tak.

Så kan du tage heldelen af resultatet. Det giver den ønskede
alder. Jeg ved ikke hvad funktionen hedder på dansk. Hvis der er
en der hedder "gulv", kan den bruges (på positive tal).

--
/Bertel
0 new messages