OVH Cloud OVH Cloud

1 janvier 1790, inférieur à 1900 ...

6 réponses
Avatar
Sebho
Bonjour,

Excel gère les dates : de à
1 janvier 1900
(numéro de série 1) 31 décembre 9999
(numéro de série 2958465)


est-il possible de stocker des dates inférieures et effectuer des
opérations avec ?

merci bcp pour votre aide
sebho

6 réponses

Avatar
Pierre Fauconnier
Bonjour

Dans outils/options/Calcul, coche "Calendrier depuis 1904". Attention, les
dates présentes dans le classeur vont être décalées de 4 ans... !!!

Cela convient-il?


--
Pierre Fauconnier ()
Les sept laids tuent ( Lewis Carol )
Remplacez nospam.nospam par pfi.be pour répondre. Merci

"Sebho" a écrit dans le message de
news:
Bonjour,

Excel gère les dates : de à
1 janvier 1900
(numéro de série 1) 31 décembre 9999
(numéro de série 2958465)


est-il possible de stocker des dates inférieures et effectuer des
opérations avec ?

merci bcp pour votre aide
sebho




Avatar
Joel
Bonsoir Pierre,

Cela permet de gérer des dates antérieures au 01/01/1900 ???

--

Bien cordialement,

Joël GARBE
www.joelgarbe.fr
"Pierre Fauconnier" a écrit dans le
message de news: %
Bonjour

Dans outils/options/Calcul, coche "Calendrier depuis 1904". Attention, les
dates présentes dans le classeur vont être décalées de 4 ans... !!!

Cela convient-il?


--
Pierre Fauconnier ()
Les sept laids tuent ( Lewis Carol )
Remplacez nospam.nospam par pfi.be pour répondre. Merci

"Sebho" a écrit dans le message de
news:
Bonjour,

Excel gère les dates : de à
1 janvier 1900
(numéro de série 1) 31 décembre 9999
(numéro de série 2958465)


est-il possible de stocker des dates inférieures et effectuer des
opérations avec ?

merci bcp pour votre aide
sebho








Avatar
Clément Marcotte
Bonjour,

Il y a ceci :

http://j-walk.com/ss/excel/files/xdate.htm

Jamais essayé.

"Sebho" a écrit dans le message de
news:
Bonjour,

Excel gère les dates : de à
1 janvier 1900
(numéro de série 1) 31 décembre 9999
(numéro de série 2958465)


est-il possible de stocker des dates inférieures et effectuer des
opérations avec ?

merci bcp pour votre aide
sebho




Avatar
Sebho
"Pierre Fauconnier" a écrit dans le
message de news:%
Bonjour

Dans outils/options/Calcul, coche "Calendrier depuis 1904". Attention, les
dates présentes dans le classeur vont être décalées de 4 ans... !!!

Cela convient-il?


Non, 1904 n'est pas inférieur à 1900
sans doute une lecture un peu trop rapide ?

Avatar
AV
est-il possible de stocker des dates inférieures (à 1900) et effectuer des
opérations avec ?


C'est possible mais on ne peut pas dire que ce soit simplissime (avec XL)
Exemples pour le fun :

*** Connaître dans une plage nommée "dates" (format jj/mm/aaaa) la date MAX et
la date MIN

Sub Min_Max_avant1900()
'sur une seule ligne !
MsgBox
[index(dates,min(if(dates<>"",if((mid(dates,7,4)&mid(dates,4,2)&left(dates,2))+0
=min(if(dates<>"",(mid(dates,7,4)&mid(dates,4,2)&left(dates,2))+0)),row(dates)))
)-min(row(dates))+1)]
'sur une seule ligne !
MsgBox
[index(dates,max(if(dates<>"",if((mid(dates,7,4)&mid(dates,4,2)&left(dates,2))+0
=max(if(dates<>"",(mid(dates,7,4)&mid(dates,4,2)&left(dates,2))+0)),row(dates)))
)-min(row(dates))+1)]
End Sub

*** Afficher une durée en années, mois et jours entre 2 dates dont la 1° (A1)
est inférieure à 1900 et la 2° (B1) supérieure à 1900
Exemple avec en A1 la date de naissance et en B1 la date de décès ou la date du
jour

Sub Age_Avant_1900()
z1 = Chr(34): z2 = Chr(47)
y1 = "left(a1," & "find(" & z1 & z2 & z1 & ",a1," & "find(" & z1 & z2 & z1 &
",a1)+1))"
'sur une seule ligne !
y2 = "substitute(mid(a1," & "find(" & z1 & z2 & z1 & ",a1)" & "+3,99)," & z1 &
z2 & z1 & "," & z1 & z1 & ")" & "+1900"
'sur une seule ligne !
vala1 = Evaluate("if(iserr(year(a1))," & z1 & Evaluate(y1) & Evaluate(y2) & z1 &
",date(year(a1)+1900,month(a1),day(a1)))")
'sur une seule ligne !
valb1 = Evaluate("if(iserr(year(b1))," & z1 & Evaluate(y1) & Evaluate(y2) & z1 &
",date(year(b1)+1900,month(b1),day(b1)))")
w1 = Format(vala1, "m/d/yyyy")
w2 = Format(valb1, "m/d/yyyy")
'sur une seule ligne !
MsgBox Evaluate("datedif(" & z1 & w1 & z1 & "," & z1 & w2 & z1 & "," & z1 & "y"
& z1 & ")") & "a " & Evaluate("datedif(" & z1 & w1 & z1 & "," & z1 & w2 & z1 &
"," & z1 & "ym" & z1 & ")") & "m " & Evaluate("datedif(" & z1 & w1 & z1 & "," &
z1 & w2 & z1 & "," & z1 & "md" & z1 & ")") & "j"
End Sub

AV

Avatar
Frédéric Sigonneau
Bonjour,

C'est possible sans problème dans le tableur d'Open Office...mais cette réponse
est HS :(
Dans Excel, c'est possible uniquement en passant par VBA, dont la plage des
dates valides s'étend du 1er janvier 100 au 31 décembre 9999.
Outre la macro complémentaire de J Walkenbach, qq exemples de travail avec des
dates antérieures à 1900 sur la page 'Dates antérieures à 1900' de ce classeur :

http://frederic.sigonneau.free.fr/office/CompilDatesv5.zip

FS
---
Frédéric Sigonneau [MVP Excel - né un sans-culottide]
Gestions de temps, VBA pour Excel :
http://frederic.sigonneau.free.fr
Si votre question sur Excel est urgente, évitez ma bal !

Bonjour,

Excel gère les dates : de à
1 janvier 1900
(numéro de série 1) 31 décembre 9999
(numéro de série 2958465)


est-il possible de stocker des dates inférieures et effectuer des
opérations avec ?

merci bcp pour votre aide
sebho