Date: prev next · Thread: first prev next last
2011 Archives by date, by thread · List index


Bonsoir Jacques,
On 13/07/2011 23:46, Jacques Montier wrote:

[...]

Bonsoir,

Non, j'avoue que je n'ai pas pensé à l'aide (c'est pas bien, je
sais...), mais j'irai voir.
Je n'ai rien inventé ; les formules ne sont pas vraiment triviales et je
ne suis guère compétent dans les problèmes de calendrier :-(
Dans les en-têtes d'images CCD, en astronomie, les dates sont données en
jour julien et j'avais besoin d'en déduire les dates dans notre
calendrier grégorien via le tableur calc.

Ces formules ont été écrites par Daniel LACROZE-MARTY (merci à lui) pour
Excel, mais fonctionnent très bien pour Calc :
J'ai vérifié les résultats avec le calculateur de l'Institut de
Mécanique Céleste
http://www.imcce.fr/fr/grandpublic/temps/jour_julien.php

- La cellule A1 contient le jour julien

- la cellule B1 donnant le jour doit contenir la formule :
=SI(ENT(A1+0,5)<2299161;ENT(A1+0,5);ENT(A1+0,5)+1+ENT((ENT(A1+0,5)-1867216,25)/36524,25)
-ENT(ENT((ENT(A1+0,5) -1867216,25)/36524,25)/4))+1524
-ENT(365,25*ENT((SI(ENT(A1+0,5)<2299161;ENT(A1+0,5);ENT(A1+0,5)+1+ENT((ENT(A1+0,5)-1867216,25)/36524,25)
-ENT(ENT((ENT(A1+0,5)-1867216,25)/36524,25)/4))+1524-122,1)/365,25))
-ENT(30,6001*ENT((SI(ENT(A1+0,5)<2299161;ENT(A1+0,5) ;
ENT(A1+0,5)+1+ENT((ENT(A1+0,5)-1867216,25)/36524,25)-ENT(ENT((ENT(A1+0,5)-1867216,25)/36524,25)/4))+1524
-ENT(365,25*ENT((SI(ENT(A1+0,5)<2299161 ;
ENT(A1+0,5);ENT(A1+0,5)+1+ENT((ENT(A1+0,5)-1867216,25)/36524,25)-ENT(ENT((ENT(A1+0,5)
-1867216,25)/36524,25)/4))+1524-122,1)/365,25)))/30,6001))

- la cellule C1 donnant le mois doit contenir la formule :
=SI(ENT((SI(ENT(A1+0,5)<2299161;ENT(A1+0,5);ENT(A1+0,5)+1+ENT((ENT(A1+0,5)
-1867216,25)/36524,25)-ENT(ENT((ENT(A1+0,5)-1867216,25)/36524,25)/4))+1524
-ENT(365,25*ENT((SI(ENT(A1+0,5)<2299161;ENT(A1+0,5);ENT(A1+0,5)+1+ENT((ENT(A1+0,5)-1867216,25)/36524,25)
-ENT(ENT((ENT(A1+0,5)-1867216,25)/36524,25)/4))+1524
-122,1)/365,25)))/30,6001)<13,5;ENT((SI(ENT(A1+0,5)<2299161;ENT(A1+0,5);ENT(A1+0,5)+1+ENT((ENT(A1+0,5)
-1867216,25)/36524,25)-ENT(ENT((ENT(A1+0,5)-1867216,25)/36524,25)/4))+1524
-ENT(365,25*ENT((SI(ENT(A1+0,5)<2299161;ENT(A1+0,5);ENT(A1+0,5)+1+ENT((ENT(A1+0,5)-1867216,25)/36524,25)
-ENT(ENT((ENT(A1+0,5)-1867216,25)/36524,25)/4))+1524-122,1)/365,25)))/30,6001)
-1;ENT((SI(ENT(A1+0,5)<2299161;ENT(A1+0,5);ENT(A1+0,5)+1+ENT((ENT(A1+0,5)-1867216,25)/36524,25)
-ENT(ENT((ENT(A1+0,5)-1867216,25)/36524,25)/4))+1524
-ENT(365,25*ENT((SI(ENT(A1+0,5)<2299161;ENT(A1+0,5);ENT(A1+0,5)+1+ENT((ENT(A1+0,5)-1867216,25)/36524,25)
-ENT(ENT((ENT(A1+0,5)-1867216,25)/36524,25)/4))+1524-122,1)/365,25)))/30,6001)-13)

- la cellule D1 donnant l'année doit contenir la formule :
=SI(C1>2,5;ENT((SI(ENT(A1+0,5)<2299161;ENT(A1+0,5);ENT(A1+0,5)+1+ENT((ENT(A1+0,5)
-1867216,25)/36524,25)-ENT(ENT((ENT(A1+0,5)-1867216,25)/36524,25)/4))+1524-122,1)/365,25)
-4716;ENT((SI(ENT(A1+0,5)<2299161;ENT(A1+0,5);ENT(A1+0,5)+1
+ENT((ENT(A1+0,5)-1867216,25)/36524,25)-ENT(ENT((ENT(A1+0,5)-1867216,25)/36524,25)/4))+1524-122,1)
/365,25)-4715)

- la cellule E1 donnant les heures :
=ENT((A1+0,5-ENT(A1+0,5))*24)

- la cellule F1 donnant les minutes :
=ENT((A1+0,5-ENT(A1+0,5))*1440-ENT(E1*60))

- la cellule G1 donnant les secondes (arrondies si l'on veut)
=ARRONDI((A1+0,5-ENT(A1+0,5))*86400-E1*3600-F1*60;0)

Le lien où se trouvent d'autres calculs :
http://www.louisg.net/Formules.htm

Merci pour tes explications, comme tu dis, les formules ne sont pas triviales ;) J'ai ajouté le lien vers les formules sur le wiki dans la partie qui traite des calendriers
http://wiki.documentfoundation.org/FR/Calc:_Fonctions_date_heure#Ann.C3.A9es_avant_1925

À bientôt
Sophie
--
Founding member of The Document Foundation

--
Envoyez un mail à users+help@fr.libreoffice.org pour savoir comment vous désinscrire
Les archives de la liste sont disponibles à http://listarchives.libreoffice.org/fr/users/
Tous les messages envoyés sur cette liste seront archivés publiquement et ne pourront pas être 
supprimés

Context


Privacy Policy | Impressum (Legal Info) | Copyright information: Unless otherwise specified, all text and images on this website are licensed under the Creative Commons Attribution-Share Alike 3.0 License. This does not include the source code of LibreOffice, which is licensed under the Mozilla Public License (MPLv2). "LibreOffice" and "The Document Foundation" are registered trademarks of their corresponding registered owners or are in actual use as trademarks in one or more countries. Their respective logos and icons are also subject to international copyright laws. Use thereof is explained in our trademark policy.