Re: PB SUR XLSDONNEE SUR UN FORMAT DE CELLULE TRES SPECIAL

Posté par drcharly93 le 28/4/2008 11:40:44
Bonjour,

En modifiant quelque peu la fonction et avec tests effectués

voici le code de la fonction qui fonctionne avec les deux formats de dates différents fournis
PROCEDURE proConvertirDateDeExcel( pDate est une chaîne, pSeparateurDate est une chaîne = "/" )
dDateHeure est une DateHeure
sHeure est une chaîne
sDate est une chaîne
nJour est un entier
nAnnee est un entier
nMois est un entier

sHeure = Droite(pDate,8)
sHeure = Remplace(sHeure, ":", "")
dDateHeure..PartieHeure = sHeure[[ A 6]]

sDate = ExtraitChaîne( pDate, 1, " " )
nJour = ExtraitChaîne( sDate, 1, pSeparateurDate )
nAnnee = ExtraitChaîne( sDate, 3, pSeparateurDate )
SI nAnnee > 50 ALORS nAnnee += 1900 SINON nAnnee += 2000
nMois = ExtraitChaîne( sDate,2, pSeparateurDate )
SI nMois = 0
	SELON ExtraitChaîne( sDate, 2, pSeparateurDate )
		CAS "janv" : nMois = 1
		CAS "févr" : nMois = 2
		CAS "mars" : nMois = 3
		CAS "avr" : nMois = 4
		CAS "mai" : nMois = 5
		CAS "juin" : nMois = 6
		CAS "juil" : nMois = 7
		CAS "août" : nMois = 8
		CAS "sept" : nMois = 9
		CAS "oct" : nMois = 10
		CAS "nov" : nMois = 11
		CAS "déc" : nMois = 12
	FIN
FIN		
dDateHeure..Année = nAnnee
dDateHeure..Mois = nMois
dDateHeure..Mois = nMois
dDateHeure..Jour = nJour

RENVOYER dDateHeure 

proConvertirDateDeExcel("31-mars-08 12:02:58","-")
Renvoi "20080331120258"
proConvertirDateDeExcel("22/08/2007 11:01:41)
Renvoi "20070822110141"

Cette contribution était de : http://old.wdforge.org/newbb/viewtopic.php?forum=18&topic_id=5842&post_id=23697