Rechercher : dans
Par :

[VBScript] Aide manipulation date/heure

Dernière réponse le 23 fév 2008 à 20:17:27 olivier, le 10 oct 2006 à 15:04:21 
 Signaler ce message aux modérateurs

Bonjour,
j'ai un souci avec la manipulation de dates/heures dans un vbscript.
Je récupère dans une variable l'attribut DateLastModified d'un fichier.
Je voudrais ensuite ajouter 2h a cette valeur. Mon probleme, est que pour les heures proches de minuit, il faut pouvoir passer au jour suivant. J'ai essayé d'utiliser la fonction DateAdd, mais il ne semble pas que cela fonctionne (je n'arrives pas à lier Date et Heure). Peut-etre y-a-t-il une autre fonction que je ne connaisses pas ?

Merci d'avance pour toute réponse

1

carbon3, le 23 fév 2008 à 18:27:57

Salut, voilà un script qui fonctionne chez moi. Comme tu peux le constater, cela va au-delà de la gestion des heures

dim yeartab
yeartab = array(31,28,31,30,31,30,31,31,30,31,30,31)
Dim fs, f, s
filespec="fichier.ext" ' à modifier suivant desiderata
    Set fs = CreateObject("Scripting.FileSystemObject")
    Set f = fs.GetFile(filespec)
    s = f.DateLastModified
	msgbox s
    'Extraction des données de la date
	sjour=Cint(Mid(s,1,2))
	smois=Cint(Mid(s,4,2))
	san=Cint(Mid(s,7,4))
	'Extraction des données de l'heure
	sheure=Cint(Mid(s,12,2))
	smin=Mid(s,15,2)	' pas besoin de convertir, on ne travaille pas avec
	ssec=Mid(s,18,2)	' idem
	
	sheure=sheure+2
	
	' Et là, ça se complique
if sheure > 24 then
	sheure=sheure-24
	sjour=sjour+1
		
	maxdayforthismonth=yeartab(smois-1)
	'sommes-nous dans une année bissextile ?
	if smois=2 then
		if ((san Mod 400) - (san Mod 100) + (san Mod 4) = 0) then maxdayforthismonth=29
	end if
	if sjour > maxdayforthismonth then
		sjour = 1
		smois = smois + 1
		if smois > 12 then
			smois = 1
			san = san + 1
		end if
	end if
end if
leadzeroj = "": if sjour < 10 then leadzeroj = "0"
leadzerom = "": if smois < 10 then leadzerom = "0"
leadzeroh = "": if sheure < 10 then leadzeroh = "0"
NewDateLastModified = leadzeroj & sjour & "/" & leadzerom & smois & "/" & san & " " & leadzeroh & sheure & ":" & smin & ":" & ssec
msgbox NewDateLastModified

Je crois que c'est cohérent

Répondre à carbon3

2

marouane20, le 23 fév 2008 à 20:10:33

Slt si vous pouvez m'aider,j ne sais pas comment avoir l'apparance de windows en application vb (fichier dll)

Répondre à marouane20

3

 carbon3, le 23 fév 2008 à 20:17:27

Salut,
peux-tu être plus précis marouane ?

Répondre à carbon3