Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Problème de date dans une macro

4 réponses
Avatar
Françoise
bonjour à tous,

un petit souci pour lequel je ne trouve pas la solution
j'ai une macro de sauvegarde de fichier, dans lequel je veux insérer la date
indiquée dans une msgbox, cela fonctionne mais me donne une date = 30 déc
1899, alors que j'indique en réponse dans ma msgbox le 20/12/2007
=========
voici le code macro :
=========
Dim data As Integer
debut:
Date = InputBox("SAUVEGARDE TARIF 1 / Indiquez la date au format jj/mm/aaaa")


ActiveWorkbook.SaveAs Filename:= _
"E:\TARIFS\TARIF 1 du " & Format(data, "dd mmm yyyy") & ".xls" _
, FileFormat:=xlNormal, Password:="", WriteResPassword:="", _
ReadOnlyRecommended:=False, CreateBackup:=False
=========
quelqu'un voit il ce qui cloche ?
d'avance merci pour vos lumières
Françoise

4 réponses

Avatar
Youky
Bonjour Françoise,
Retourne vite voir dans tes paramétres window pour remettre à jour la date
que
tu as modifiée en te servant de Date comme variable
Important
trucmachinÚte c'est bon alors que
Date="20/12/2007" va modifier ta date en window
Youky
"Françoise" a écrit dans le message de
news:
bonjour à tous,

un petit souci pour lequel je ne trouve pas la solution
j'ai une macro de sauvegarde de fichier, dans lequel je veux insérer la
date
indiquée dans une msgbox, cela fonctionne mais me donne une date = 30 déc
1899, alors que j'indique en réponse dans ma msgbox le 20/12/2007
======== > voici le code macro :
======== > Dim data As Integer
debut:
Date = InputBox("SAUVEGARDE TARIF 1 / Indiquez la date au format
jj/mm/aaaa")


ActiveWorkbook.SaveAs Filename:= _
"E:TARIFSTARIF 1 du " & Format(data, "dd mmm yyyy") & ".xls" _
, FileFormat:=xlNormal, Password:="", WriteResPassword:="", _
ReadOnlyRecommended:úlse, CreateBackup:úlse
======== > quelqu'un voit il ce qui cloche ?
d'avance merci pour vos lumières
Françoise


Avatar
lSteph
Bonsoir,

attention tu définis data et fixes date ce n'est pas la même chose et
c'est un mot réservé...
;-)
si c'est pour mettre la date pas besoin de la demander
exemple:
Sub SauvAvecDate()
ActiveWorkbook.SaveAs FileName:= _
"C:TARIF_du_" & Format(Now, "dd_mmm_yyyy") & ".xls" _
, FileFormat:=xlNormal, Password:="", WriteResPassword:="", _
ReadOnlyRecommended:úlse, CreateBackup:úlse
End Sub


'sauf si on en veut une autre

Sub SauvAvecDate2()
Dim d As String, pardefaut As String
pardefaut = Format(Date, "dd/mm/yyyy")
d = InputBox("Entrer la date au format dd/mm/yyyy : ", _
"Saisie date pour enregistrement", pardefaut)
If Not IsDate(d) Then d = pardefaut

ActiveWorkbook.SaveAs FileName:= _
"C:TARIF_du_" & Format(d, "dd_mmm_yyyy") & ".xls" _
, FileFormat:=xlNormal, Password:="", WriteResPassword:="", _
ReadOnlyRecommended:úlse, CreateBackup:úlse
End Sub


'Cordialement.
'lSteph


On 20 déc, 17:38, Françoise
wrote:
bonjour à tous,

un petit souci pour lequel je ne trouve pas la solution
j'ai une macro de sauvegarde de fichier, dans lequel je veux insérer la date
indiquée dans une msgbox, cela fonctionne mais me donne une date = 30 déc
1899, alors que j'indique en réponse dans ma msgbox le 20/12/2007
=========
voici le code macro :
=========
Dim data As Integer
debut:
Date = InputBox("SAUVEGARDE TARIF 1 / Indiquez la date au format jj/mm/a aaa")

ActiveWorkbook.SaveAs Filename:= _
"E:TARIFSTARIF 1 du " & Format(data, "dd mmm yyyy") & ".xls" _
, FileFormat:=xlNormal, Password:="", WriteResPassword:="", _
ReadOnlyRecommended:úlse, CreateBackup:úlse
=========
quelqu'un voit il ce qui cloche ?
d'avance merci pour vos lumières
Françoise


Avatar
Françoise
ça fonctionne IMPECCABLEMENT BIEN
merci beaucoup pour ton aide !
cordialement
Françoise


Bonsoir,

attention tu définis data et fixes date ce n'est pas la même chose et
c'est un mot réservé...
;-)
si c'est pour mettre la date pas besoin de la demander
exemple:
Sub SauvAvecDate()
ActiveWorkbook.SaveAs FileName:= _
"C:TARIF_du_" & Format(Now, "dd_mmm_yyyy") & ".xls" _
, FileFormat:=xlNormal, Password:="", WriteResPassword:="", _
ReadOnlyRecommended:úlse, CreateBackup:úlse
End Sub


'sauf si on en veut une autre

Sub SauvAvecDate2()
Dim d As String, pardefaut As String
pardefaut = Format(Date, "dd/mm/yyyy")
d = InputBox("Entrer la date au format dd/mm/yyyy : ", _
"Saisie date pour enregistrement", pardefaut)
If Not IsDate(d) Then d = pardefaut

ActiveWorkbook.SaveAs FileName:= _
"C:TARIF_du_" & Format(d, "dd_mmm_yyyy") & ".xls" _
, FileFormat:=xlNormal, Password:="", WriteResPassword:="", _
ReadOnlyRecommended:úlse, CreateBackup:úlse
End Sub


'Cordialement.
'lSteph


On 20 déc, 17:38, Françoise
wrote:
bonjour à tous,

un petit souci pour lequel je ne trouve pas la solution
j'ai une macro de sauvegarde de fichier, dans lequel je veux insérer la date
indiquée dans une msgbox, cela fonctionne mais me donne une date = 30 déc
1899, alors que j'indique en réponse dans ma msgbox le 20/12/2007
======== > > voici le code macro :
======== > > Dim data As Integer
debut:
Date = InputBox("SAUVEGARDE TARIF 1 / Indiquez la date au format jj/mm/aaaa")

ActiveWorkbook.SaveAs Filename:= _
"E:TARIFSTARIF 1 du " & Format(data, "dd mmm yyyy") & ".xls" _
, FileFormat:=xlNormal, Password:="", WriteResPassword:="", _
ReadOnlyRecommended:úlse, CreateBackup:úlse
======== > > quelqu'un voit il ce qui cloche ?
d'avance merci pour vos lumières
Françoise






Avatar
Modeste
Bonsour® Françoise avec ferveur ;o))) vous nous disiez :

un petit souci pour lequel je ne trouve pas la solution
j'ai une macro de sauvegarde de fichier, dans lequel je veux insérer
la date indiquée dans une msgbox, cela fonctionne mais me donne une
date = 30 déc 1899, alors que j'indique en réponse dans ma msgbox le
20/12/2007 ======== > ======== > Dim data As Integer
debut:
Date = InputBox("SAUVEGARDE TARIF 1 / Indiquez la date au format
jj/mm/aaaa")
ActiveWorkbook.SaveAs Filename:= _
"E:TARIFSTARIF 1 du " & Format(data, "dd mmm yyyy") & ".xls" _
, FileFormat:=xlNormal, Password:="", WriteResPassword:="", _
ReadOnlyRecommended:úlse, CreateBackup:úlse
======== > quelqu'un voit il ce qui cloche ?


de l'interet de ne pas utiliser de mots réservés ....
1- le résultat de Inputbox est affecté à Date , alors que l'instruction
suivante utilise data ???
2 - l'inputbox affecte Date,cela est déconseillé, Date est un mot reservé
il vaut mieux definir Madate pour récuperer la saisie de l'InputBox
3 - la variable Madate ne doit pas etre de type integer mais de type Double (8
octets) même de préference de type date


Dim MaDate As Date
debut:
MaDate = InputBox("SAUVEGARDE TARIF 1 / Indiquez la date au format jj/mm/aaaa")
ActiveWorkbook.SaveAs Filename:= _
""E:TARIFSTARIF 1 du " & Format(MaDate, "dd mmm yyyy") & ".xls" _
, FileFormat:=xlNormal, Password:="", WriteResPassword:="", _
ReadOnlyRecommended:úlse, CreateBackup:úlse



--
--
@+
;o)))