Microsoft 365 date souci sur nom du PDF créé

Usine à gaz

XLDnaute Barbatruc
Supporter XLD
Bonjour à toutes et à tous :)

Je n'arrive à à trouver comment faire ce qui suit :

Dans mon fichier, en Z2 (formaté aaaa mm jj), j'ai une date et sa valeur est 2023.04.07
J'ai besoin de mettre cette date dans la création d'un PDF :
Code:
ChDir "C:\Users\lionel\Desktop"
    ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, FileName:= _
        "C:\Users\lionel\Desktop\" & [Z2].Value & " " & [k18] & " " & "Comparaison" & ".PDF", Quality:= _
        xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, _
        OpenAfterPublish:=False

Je voudrais que dans le nom du PDF, la date soit 2023 04 07 mais elle sort 2023.04.07

J'ai tenté de tas de formules sans trouver comment faire.
Auriez-vous la solution ?
Si besoin, je joindrai un petit fichier test.
Un grand merci à toutes et à tous
:)
 

Phil69970

XLDnaute Barbatruc
Bonjour Lionel

Je te propose 2 solutions

Solution 1 :
ChDir "C:\Users\lionel\Desktop"
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, FileName:= _
"C:\Users\lionel\Desktop\" & Replace([Z2].Value, " ", ".") & " " & [k18] & " " & "Comparaison" & ".PDF", Quality:= _
xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, _
OpenAfterPublish:=False

Solution 2
MaDateX= Replace([Z2].Value, " ", ".")

ChDir "C:\Users\lionel\Desktop"
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, FileName:= _
"C:\Users\lionel\Desktop\" & MaDateX & " " & [k18] & " " & "Comparaison" & ".PDF", Quality:= _
xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, _
OpenAfterPublish:=False

Merci de ta reponse

@Phil69970
 

Phil69970

XLDnaute Barbatruc
Re

Oups ! J'ai compris à l'envers

Solution 1
ChDir "C:\Users\lionel\Desktop"
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, FileName:= _
"C:\Users\lionel\Desktop\" & Replace([Z2].Value, ".", " ") & " " & [k18] & " " & "Comparaison" & ".PDF", Quality:= _
xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, _
OpenAfterPublish:=False

Solution 2

MaDateX= Replace([Z2].Value, ".", " ")

ChDir "C:\Users\lionel\Desktop"
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, FileName:= _
"C:\Users\lionel\Desktop\" & MaDateX & " " & [k18] & " " & "Comparaison" & ".PDF", Quality:= _
xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, _
OpenAfterPublish:=False

Et pour la solution 2 c'est simple tu copies le code en remplacement de ton code existant

Donc tu remplaces
Code:
Code:
ChDir "C:\Users\lionel\Desktop"
    ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, FileName:= _
        "C:\Users\lionel\Desktop\" & [Z2].Value & " " & [k18] & " " & "Comparaison" & ".PDF", Quality:= _
        xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, _
        OpenAfterPublish:=False

Par la solution 2 ==> Tu fais un copier / coller de mon code

@Phil69970
 

Cousinhub

XLDnaute Barbatruc
Bonjour,
Essaie ceci :
VB:
Dim MaDat As String
MaDat = Format(Range("F2").Value, "yyyy mm dd")

Quelque soit le format appliqué dans une cellule, si cette cellule contient une date, c'est qu'elle contient un nombre. Et qu'il faut mettre en format adapté.
Bonne apm
 

Phil69970

XLDnaute Barbatruc
Re

Ceci fonctionne

ChDir "C:\Users\lionel\Desktop"
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
"C:\Users\lionel\Desktop\" & Replace([f2].Text, ".", " ") & " " & [g2] & " " & "Comparaison" & ".PDF", Quality:= _
xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, _
OpenAfterPublish:=False
et donne ce PDF


@Phil69970
 

Pièces jointes

  • 2023 04 07 lionel Comparaison.PDF
    186 KB · Affichages: 3

job75

XLDnaute Barbatruc
Bonsoir Lionel, le fil,

J'avoue ne pas comprendre vos échanges et codes car avec [F2].Text c'est assez évident :
VB:
Sub imprim_pdf()
ActiveSheet.ExportAsFixedFormat xlTypePDF, ThisWorkbook.Path & "\" & [F2].Text & " " & [G2] & " " & "Comparaison.pdf", OpenAfterPublish:=False
End Sub
A+
 

Pièces jointes

  • date pour pdf.xlsm
    17.3 KB · Affichages: 3

Cousinhub

XLDnaute Barbatruc
Bonsoir Lionel, le fil,

J'avoue ne pas comprendre vos échanges et codes car avec [F2].Text c'est assez évident :
VB:
Sub imprim_pdf()
ActiveSheet.ExportAsFixedFormat xlTypePDF, ThisWorkbook.Path & "\" & [F2].Text & " " & [G2] & " " & "Comparaison.pdf", OpenAfterPublish:=False
End Sub
A+
Hi,
Justement, dans sa cellule, c'est 2023.04.07 et il veut 2023 04 07...
Donc il n'utilise nullement la date, juste le format qu'il applique à ce jour, et qui, un jour, ne va plus lui plaire...
 

Discussions similaires

Statistiques des forums

Discussions
312 207
Messages
2 086 244
Membres
103 162
dernier inscrit
fcfg