Dag Reginald, > > Wat betreft de datums voor 1583, is het volgende een feit: de Gregoriaanse > kalender start op 15 oktober 1582. Voordien was dit de Juliaanse kalender (- > 45 tot 1582). Er werd toen een tijdsprong van 10 dagen gemaakt om de > tijdrekening juist te krijgen, dit wil zeggen dat de > 4 oktober 1582 gevolgd werd door de 15 oktober 1582. De datumfunctie kan > dus uitgebreid worden tot de Juliaanse kalender, enkel een controle op > datums tussen 4 en 15 oktober 1582 zou moeten ingebouwd worden om > deze te verwerpen. Voor mij mag dit dus een uitbreiding zijn tot het jaar 1 > (negatieve datums dus achterwege laten). Dit zou een grote hulp zijn voor > alle personen (academici, studenten) die zich met historische feiten bezig > houden. >
Ik ben even in de code gedoken en heb de specificatie voor Open Document Format (de bestandsdefinitie voor o.a. calc (ods) bestanden) er op nageslagen. De specificatie geeft duidelijk aan dat het om een Gregoriaanse datum gaat en daarom weigert calc in de functie DATE (DATUM) jaartallen kleiner dan 1583. Dit is een vrije vertaling van 15 oktober 1582 en zou verfijnd kunnen worden, maar gezien de vele verschillen in invoerdatum per land en zelfs regio, voegt dat m.i. weinig toe. (Is wel eenvoudig te realiseren; ik weet niet hoeveel waarde je hier aan hecht). Om eerdere data samen te kunnen stellen uit dag, maand en jaar zou ik een aanvullende functie kunnen maken, of een optionele parameter aan DATE (DATUM) kunnen toevoegen die de controle op Gregoriaanse datum uitschakelt. Dit geeft echter vaak conflicten met de uitwisselbaarheid van ods bestanden (met andere programma's en/of oudere versies). Er is nu al een optie om de Gregoriaanse datum beperking te omzeilen. methode (stel dag staat in A1, maand in B1, jaar in C1 en lokale datum weergave is d-m-j): 1. maak een tekst van de dag, maand, jaar met het lokale scheidingteken en in de lokale volgorde: =CONCATENATE(A1;"-";B1;"-";C1) (TEKST.SAMENVOEGEN) 2. zet de tekst om in datum: als bovenstaande formule in A2 staat =DATEVALUE(A2) (DATUMWAARDE) of in 1 keer =DATEVALUE(CONCATENATE(A1;"-";B1;"-";C1)) (DATUMWAARDE) 3. zorg dat de celnotatie op datum is ingesteld, want de interne datum/tijdrepresentatie is een getal Winfried -- Unsubscribe instructions: E-mail to [email protected] Posting guidelines + more: http://wiki.documentfoundation.org/Netiquette List archive: http://listarchives.libreoffice.org/nl/users/ All messages sent to this list will be publicly archived and cannot be deleted
