Aide et conseils concernant AutoIt et ses outils.
kastor
Niveau 1
Messages : 12 Enregistré le : ven. 13 juil. 2012 14:54
Status :
Hors ligne
#1
Message
par kastor » mer. 25 juin 2014 16:25
Bonjour à tous,
J'ai ce bout de code qui me permet d'ajouter 3 mois à la "1ère" date.
Je n'arrive à modifier cette date lorsqu'elle est inversée (version anglaise)
J'obtiens le résultat "0" au lieu de la date.
je pense que le bout de code "en rouge" est faux. si vous pouviez m'éclairer.
Merci d'avance
► Afficher le texte
Code : Tout sélectionner
#include <Date.au3>
Local $DATE = @YEAR & "/" & @MON & "/" & @MDAY
$msg0 = msgbox(4,"date de début d'absence","l'absence débute-t-elle aujourd'hui ?")
if $msg0 = 6 then
Local $date0 = (StringRegExpReplace(_DATEADD("M", 0, $DATE), "(\d\d\d\d)/(\d\d)/(\d\d)", "$3" & "/" & "$2" & "/" & "$1"))
Local $date2 = (StringRegExpReplace(_DATEADD("M", 3, $DATE), "(\d\d\d\d)/(\d\d)/(\d\d)", "$3" & "/" & "$2" & "/" & "$1"))
else
local $DATE1 = inputbox ("début","date de début au format 01/01/2014", @MDAY & "/" & @MON & "/" & @YEAR)
Local $date0 = (StringRegExpReplace(_DATEADD("M", 0, $DATE1), [color=#BF0040]"(\d\d\d\d)/(\d\d)/(\d\d)", "$1" & "/" & "$2" & "/" & "$3"))[/color]
Local $date2= (StringRegExpReplace(_DATEADD("M", 3, $DATE1),[color=#BF0040]"(\d\d\d\d)/(\d\d)/(\d\d)", "$1" & "/" & "$2" & "/" & "$3"))[/color]
endif
msgbox (4,"verif",$date0)
msgbox (4,"verif",$date2)
Modifié en dernier par
kastor le jeu. 26 juin 2014 10:56, modifié 2 fois.
jguinch
Modérateur
Messages : 2515 Enregistré le : lun. 14 févr. 2011 22:12
Status :
Hors ligne
#2
Message
par jguinch » mer. 25 juin 2014 16:26
Merci d'utiliser la balise Spoiler pour le code.
Pour la date :
► Afficher le texte
Code : Tout sélectionner
local $DATE1 = inputbox ("début","date de début au format 01/01/2014", @MDAY & "/" & @MON & "/" & @YEAR)
Local $date0 = _DATEADD("M", 3, StringRegExpReplace ($DATE1, "(\d{2})/(\d{2})/(\d{4})", "$3" & "/" & "$2" & "/" & "$1") )
Le script, ça fait gagner beaucoup de temps... à condition d'en avoir beaucoup devant soi !
kastor
Niveau 1
Messages : 12 Enregistré le : ven. 13 juil. 2012 14:54
Status :
Hors ligne
#3
Message
par kastor » mer. 25 juin 2014 16:31
Merci ça fonctionne, par contre je dois retrouver la date au format jj/mm/aaaa ...
jguinch
Modérateur
Messages : 2515 Enregistré le : lun. 14 févr. 2011 22:12
Status :
Hors ligne
#4
Message
par jguinch » mer. 25 juin 2014 17:45
Ton regexp le fait
Le script, ça fait gagner beaucoup de temps... à condition d'en avoir beaucoup devant soi !
kastor
Niveau 1
Messages : 12 Enregistré le : ven. 13 juil. 2012 14:54
Status :
Hors ligne
#5
Message
par kastor » jeu. 26 juin 2014 09:42
J'ai bien peur de ne pas comprendre comment fonctionne le regexp .
Je n'arrive pas à transformer la date au format aaaa/mm/dd en dd/mm/aaaa.
jguinch
Modérateur
Messages : 2515 Enregistré le : lun. 14 févr. 2011 22:12
Status :
Hors ligne
#6
Message
par jguinch » jeu. 26 juin 2014 09:54
Voilà :
► Afficher le texte
Code : Tout sélectionner
#Include <Date.au3>
Local $DATE1 = inputbox ("début","date de début au format 01/01/2014", @MDAY & "/" & @MON & "/" & @YEAR)
$date1 = StringRegExpReplace ($DATE1, "(\d{2})/(\d{2})/(\d{4})", "$3/$2/$1") ; Conversion de JJ/MM/AAAA en AAAA/MM/JJ
Local $date0 = _DATEADD("M", 3, $date1 )
$date0 = StringRegExpReplace($date0, "(\d{4})/(\d{2})/(\d{2})", "$3/$2/$1") ; Conversion de AAAA/MM/JJ en JJ/MM/AAAA
ConsoleWrite($date0)
Le script, ça fait gagner beaucoup de temps... à condition d'en avoir beaucoup devant soi !
kastor
Niveau 1
Messages : 12 Enregistré le : ven. 13 juil. 2012 14:54
Status :
Hors ligne
#7
Message
par kastor » jeu. 26 juin 2014 10:09