Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1016 connectés 

  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Pbl Format Date VBs/wsh Attributes

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Pbl Format Date VBs/wsh Attributes

n°1630678
rehties
Posté le 25-10-2007 à 09:54:11  profilanswer
 

Bonjour a tous :)  
 
Je ne connais pas le VBs, je commence a mettre le bout du nez dedans . Merci de me guider.
 
Mon probleme :??:  
 
InputBox("Nom :",chemin, Year(Date()) & "" & Day(Date()) & "" & Month(Date()) & "_" & Hour(Time()) & "" & Minute(Time()) )
Cela donne par exemple  2007910_99    pour le 10/09/2007 a 09h09
 
Comment argumenter pour que cela done  070910_0909
Merci d'avance :hello:


Message édité par rehties le 27-10-2007 à 09:50:18
mood
Publicité
Posté le 25-10-2007 à 09:54:11  profilanswer
 

n°1630697
tegu
Posté le 25-10-2007 à 10:06:32  profilanswer
 

Il te faut utiliser la fonction Format$() qui permet de garder les zéros non significatifs entre autres.
Par exemple : Format$(Hour(Time()), "00" ), renverra 09 dans ton cas.
Et Format$(Year(Date()); "yy" ), renverra 07


Message édité par tegu le 25-10-2007 à 10:09:38
n°1630709
rehties
Posté le 25-10-2007 à 10:22:46  profilanswer
 

InputBox("Nom :",chemin, Format$(Year(Date()); "yy" ) & "" & Day(Date()) & "" & Month(Date()) & "_" & Hour(Time()) & "" & Minute(Time()) )
et
InputBox("Nom:",chemin, Format$(Year(Date()) & "" & Day(Date()) & "" & Month(Date()) & "_" & Hour(Time()) & "" & Minute(Time()) ); "yyddmm" )
 
cela fonctionne pas

n°1630736
rehties
Posté le 25-10-2007 à 10:49:35  profilanswer
 


Dans   http://fr.wikibooks.org/wiki/Programmation_VBscript   :)  
 
On peut voir dans Format de date :
vbLongDate  1  Date complète  :??:  
 
Cet argument correspond t-il à ce que je cherche ? Comment l'utilise t on ?

n°1630785
tegu
Posté le 25-10-2007 à 11:36:19  profilanswer
 

InputBox("Nom :",chemin, Format$(Year(Date()), "yy" ) & "" & Day(Date()) & "" & Month(Date()) & "_" & Hour(Time()) & "" & Minute(Time()) )

fonctionne.
Mais toi tu as mis un point-virgule dans ta formule avec le "yy" et ça plante effectivement.
Et cette formule ne formate pas les heures et les minutes.

n°1630877
rehties
Posté le 25-10-2007 à 13:47:55  profilanswer
 

Merci Tegu
 
J'ai trouvé une reponse
http://www.vbfrance.com/infomsg_VB [...] 98825.aspx
 
Function Pad2(Str)
   If Len(Str) = 1 Then
       Pad2 = "0" & Str
   Else
       Pad2 = Str
   End If
End Function
 
Function FormatTri(vsDate)
 FormatTri = Pad2(Right(Year(vsDate), 2)) & _
             Pad2(Month(vsDate)) & _
             Pad2(Day(vsDate)) & _
                 "_" & _
             Pad2(Hour(vsDate)) & _
             Pad2(Minute(vsDate)) & _
             Pad2(Second(vsDate))
End Function
 
FormatTri(Now)

n°1630899
tegu
Posté le 25-10-2007 à 14:12:36  profilanswer
 

Sérieusement, j'espère que tu vas utiliser Format$() au lieu de ce... truc que tu nous montres, qui réinvente la roue, en moins bien.
Renseigne-toi aussi sur les fonctions Space$() et String$() (pas le type de données, la fonction).

n°1630958
rehties
Posté le 25-10-2007 à 15:18:55  profilanswer
 

Oki je prend note de ton conseil, je vais continuer a chercher car meme avec la virgule cela fonctionne pas..
 
Maintenant de decouvre tout juste ... :love:  le VBS comme le batch c'est juste pour comblé les manques de MS et des logiciels que j utilise (repeter toujours la meme manip... :non: )
 
Copier et dater du clic droit / menu contextuel MsXp

Code :
  1. Set args  = Wscript.Arguments
  2. Set fso   = WScript.CreateObject("Scripting.FileSystemObject" )
  3. nom=InputBox("Nom du sous-répertoire à créer :",chemin, ("Nom :",chemin, Format$(Year(Date()), "yy" ) & "" & Day(Date()) & "" & Month(Date()) & "_" & Hour(Time()) & "" & Minute(Time()) ) 
  4. chemin=args(0)
  5. If not fso.FolderExists(chemin)  Then
  6. If fso.FileExists(chemin) Then
  7.  chemin=fso.GetParentFolderName(chemin)
  8. else wscript.quit
  9.     End If
  10. End If
  11. newdoss=fso.BuildPath(chemin,nom)
  12. fso.CreateFolder(newdoss)
  13. WScript.quit


 
 

n°1631059
tegu
Posté le 25-10-2007 à 16:37:40  profilanswer
 

Mea culpa.
Il semblerait que la fonction Format$() ne soit pas dispo telle quelle en VBS, contrairement à VB6 et VBA (ce qui est une ânerie sans nom de plus à mettre à l'actif de MS).
Et les fonctions FormatCurrency(), FormatDateTime(), FormatNumber(), DatePart(), etc., ne me semblent pas plus adaptées.
Space() et String() (sans le $) existent cependant, mais ça revient au... truc que tu as posté avant :)

 


Message édité par tegu le 25-10-2007 à 16:37:59
n°1631526
rehties
Posté le 26-10-2007 à 12:34:35  profilanswer
 

:pt1cable:  un autre probleme pour declarer les attributs du fichier  Destop.ini  
 
 :fou:  code 800A01B6
          ne gere pas cette propriete ou cette methode: textnewfichier.Attributes
 
Mais cela fonctionne pour les attributs du repertoire ?? :pt1cable:  
 

Code :
  1. Function Pad2(Str)
  2.    If Len(Str) = 1 Then
  3.        Pad2 = "0" & Str
  4.    Else
  5.        Pad2 = Str
  6.    End If
  7. End Function
  8. Function FormatTri(vsDate)
  9. FormatTri = Pad2(Right(Year(vsDate), 2)) & _
  10.              Pad2(Month(vsDate)) & _
  11.              Pad2(Day(vsDate)) & _
  12.                  "_" & _
  13.              Pad2(Hour(vsDate)) & _
  14.              Pad2(Minute(vsDate))       
  15. End Function
  16. Set args  = Wscript.Arguments
  17. Set fso   = WScript.CreateObject("Scripting.FileSystemObject" )
  18. nomfichier=("Desktop.ini" )
  19. nomrep=InputBox("Nom du sous-répertoire à créer :",chemin, FormatTri(Now))
  20. chemin=args(0)
  21. If not fso.FolderExists(chemin)  Then
  22. If fso.FileExists(chemin) Then
  23.  chemin=fso.GetParentFolderName(chemin)
  24. else wscript.quit
  25.     End If
  26. End If
  27. newdoss=fso.BuildPath(chemin,nomrep)
  28. set attrdoss=fso.CreateFolder(newdoss)
  29. newfichier=fso.BuildPath(newdoss,nomfichier)
  30. set textnewfichier=fso.CreateTextFile(newfichier)
  31. textnewfichier.WriteLine ("[.ShellClassInfo]" )
  32. textnewfichier.WriteLine ("IconFile=%SystemRoot%\Resources\Icones\glass\GlassIso.ico" )
  33. textnewfichier.WriteLine ("IconIndex=0" )
  34. attrdoss.Attributes=4
  35. textnewfichier.Attributes=0
  36. WScript.quit


mood
Publicité
Posté le 26-10-2007 à 12:34:35  profilanswer
 

n°1632068
rehties
Posté le 27-10-2007 à 09:31:54  profilanswer
 

:hello:  voila reglé :
 

Code :
  1. Function Pad2(Str)
  2.    If Len(Str) = 1 Then
  3.        Pad2 = "0" & Str
  4.    Else
  5.        Pad2 = Str
  6.    End If
  7. End Function
  8. Function FormatTri(vsDate)
  9. FormatTri = Pad2(Right(Year(vsDate), 2)) & _
  10.              Pad2(Month(vsDate)) & _
  11.              Pad2(Day(vsDate)) & _
  12.                  "_" & _
  13.              Pad2(Hour(vsDate)) & _
  14.              Pad2(Minute(vsDate))       
  15. End Function
  16. Set args  = Wscript.Arguments
  17. Set fso   = WScript.CreateObject("Scripting.FileSystemObject" )
  18. nomfichier=("Desktop.ini" )
  19. nomrep=InputBox("Nom du sous-répertoire à créer :",chemin, FormatTri(Now))
  20. chemin=args(0)
  21. If not fso.FolderExists(chemin)  Then
  22. If fso.FileExists(chemin) Then
  23.  chemin=fso.GetParentFolderName(chemin)
  24. else wscript.quit
  25.     End If
  26. End If
  27. set folder=fso.CreateFolder(fso.BuildPath(chemin,nomrep))
  28. folder.Attributes=4
  29. set file=fso.CreateTextFile(fso.BuildPath(folder,nomfichier))
  30. file.WriteLine ("[.ShellClassInfo]" )
  31. file.WriteLine ("IconFile=%SystemRoot%\Resources\Icones\glass\GlassIso.ico" )
  32. file.WriteLine ("IconIndex=0" )
  33. If fSo.fileExists(folder & "\desktop.ini" ) then
  34. Set file = fSo.GetFile(folder & "\desktop.ini" )
  35. file.attributes = 2
  36. End if
  37. WScript.quit


 
Voila mais je ne comprend pas pourquoi je suis obligé de passer par (folder & "\desktop.ini" )   :pt1cable:
Comment peut on mettre une "variable(nomfichier)" :hello:  a la place de  & "\desktop.ini"  ...je ne trouve pas.
 
merci


Message édité par rehties le 27-10-2007 à 09:46:53

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Pbl Format Date VBs/wsh Attributes

 

Sujets relatifs
Probleme de date chez client mais pas chez moi[EXCEL2007] Problèmes de format (chiffre deviennent dates ; graphes)
[HTA/VBS] Utilisation d'un vbs externe et modification d'un champ[VBS] message d'avertissement au lancement d'un exe dans un script vbs
%ErrorLevel% + WSF et/ou VBSRécupération de la date d'un fichier en PHP ??
[VBS] taille d'un GetObject[Mysql 5] Connaitre le microtime de la date courante
Manipulation de date : java.sql.Date & Calendar 
Plus de sujets relatifs à : Pbl Format Date VBs/wsh Attributes


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR