Macro VBA Enregistrement feuille Excel en PDF (repertoire défini)
Bonjour,
J'ai crée une macro pour enregistrer ma feuille excel au format pdf dans un répertoire spécifique. Mais malheureusement, à partir de ActiveSheet j'ai une erreur que je n'arrive pas à solutionnée.
Le Fichier PDF doit être en registré dans un dossier spécifique et le Nom du fichier est être la date du jour et un numéro (donnée de cellule).
Sub Enreg_Pdf()
Dim LeDate As String
LaDate = Format(Date, "dd" & "." & "mm" & "." & "yyyy")
' Création fichier PDF
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
"C:\Users\POPEY\OneDrive\Bureau\ARCHIVES-PDF-INNOZH\" & LaDate & " " & Range("E4").Value & ".pdf", Quality:= _
xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, _
From:=1, To:=1, OpenAfterPublish:=True
' Message de confirmation
MsgBox ("Création du fichier PDF effectué" & vbCrLf & vbCrLf & "Merci ")
End Sub
Merci par avance
Ci joint ma macro en entière.
Sub archiver()
ligne = Sheets("HISTORIQUE_B-C").Range("A" & Rows.Count).End(xlUp).Row + 1
Sheets("HISTORIQUE_B-C").Range("A" & ligne).Value = Sheets("Modele_Bon_de_commande").Range("E4").Value
Sheets("HISTORIQUE_B-C").Range("B" & ligne).Value = Sheets("Modele_Bon_de_commande").Range("C14").Value
Sheets("HISTORIQUE_B-C").Range("C" & ligne).Value = Sheets("Modele_Bon_de_commande").Range("C18").Value
Sheets("HISTORIQUE_B-C").Range("D" & ligne).Value = Sheets("Modele_Bon_de_commande").Range("F18").Value
Sheets("HISTORIQUE_B-C").Range("E" & ligne).Value = Sheets("Modele_Bon_de_commande").Range("B20").Value
Sheets("HISTORIQUE_B-C").Range("F" & ligne).Value = Sheets("Modele_Bon_de_commande").Range("F7").Value
Sheets("HISTORIQUE_B-C").Range("G" & ligne).Value = Sheets("Modele_Bon_de_commande").Range("F8").Value
Sheets("HISTORIQUE_B-C").Range("H" & ligne).Value = Sheets("Modele_Bon_de_commande").Range("F9").Value
Sheets("HISTORIQUE_B-C").Range("I" & ligne).Value = Sheets("Modele_Bon_de_commande").Range("F11").Value
Sheets("HISTORIQUE_B-C").Range("J" & ligne).Value = Sheets("Modele_Bon_de_commande").Range("G11").Value
Sheets("HISTORIQUE_B-C").Range("K" & ligne).Value = Sheets("Modele_Bon_de_commande").Range("B24").Value
Sheets("HISTORIQUE_B-C").Range("L" & ligne).Value = Sheets("Modele_Bon_de_commande").Range("F24").Value
Sheets("HISTORIQUE_B-C").Range("M" & ligne).Value = Sheets("Modele_Bon_de_commande").Range("B25").Value
Sheets("HISTORIQUE_B-C").Range("N" & ligne).Value = Sheets("Modele_Bon_de_commande").Range("F25").Value
Sheets("HISTORIQUE_B-C").Range("O" & ligne).Value = Sheets("Modele_Bon_de_commande").Range("B26").Value
Sheets("HISTORIQUE_B-C").Range("P" & ligne).Value = Sheets("Modele_Bon_de_commande").Range("F26").Value
Sheets("HISTORIQUE_B-C").Range("Q" & ligne).Value = Sheets("Modele_Bon_de_commande").Range("B27").Value
Sheets("HISTORIQUE_B-C").Range("R" & ligne).Value = Sheets("Modele_Bon_de_commande").Range("F27").Value
Sheets("HISTORIQUE_B-C").Range("S" & ligne).Value = Sheets("Modele_Bon_de_commande").Range("G29").Value
Sheets("HISTORIQUE_B-C").Range("T" & ligne).Value = Sheets("Modele_Bon_de_commande").Range("G31").Value
Sheets("HISTORIQUE_B-C").Range("U" & ligne).Value = Sheets("Modele_Bon_de_commande").Range("G30").Value
Enreg_Pdf
Sheets("Modele_Bon_de_commande").Range("F7:H7").ClearContents
Sheets("Modele_Bon_de_commande").Range("F8:H8").ClearContents
Sheets("Modele_Bon_de_commande").Range("F9:H9").ClearContents
Sheets("Modele_Bon_de_commande").Range("F11").ClearContents
Sheets("Modele_Bon_de_commande").Range("G11").ClearContents
Sheets("Modele_Bon_de_commande").Range("F18").ClearContents
Sheets("Modele_Bon_de_commande").Range("B20:H20").ClearContents
Sheets("Modele_Bon_de_commande").Range("B24:E24").ClearContents
Sheets("Modele_Bon_de_commande").Range("B25:E25").ClearContents
Sheets("Modele_Bon_de_commande").Range("B26:E26").ClearContents
Sheets("Modele_Bon_de_commande").Range("B27:E27").ClearContents
Sheets("Modele_Bon_de_commande").Range("E4").ClearContents
Sheets("Modele_Bon_de_commande").Range("E4").Value = "FOR_" & "-" & Right(Year(Date), 2) & "_" & Format(Month(DateB_C), "00") & "_" & Format(ligne, "0000")
End Sub
Sub Enreg_Pdf()
Dim Numbc As String, LeDate As String
Numbc = Range("E4").Value
LaDate = Format(Date, "dd" & "." & "mm" & "." & "yyyy")
' Création fichier PDF
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
"C:\Users\POPEY\OneDrive\Bureau\ARCHIVES-PDF-INNOZH" & LaDate & " " & Numbc & ".pdf", Quality:= _
xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, _
From:=1, To:=1, OpenAfterPublish:=False
' Message de confirmation
MsgBox ("Création du fichier PDF effectué" & vbCrLf & vbCrLf & "Merci ")
End Sub
Salut,
Ceci : LaDate = Format(Date, "dd" & "." & "mm" & "." & "yyyy") peut être changé en cela : LaDate = Format(Date, "dd.mm.yyyy")
Ici "C:\Users\POPEY\OneDrive\Bureau\ARCHIVES-PDF-INNOZH" & LaDate & " " & Numbc & ".pdf", Quality:= _ il manque un slash. "C:\Users\POPEY\OneDrive\Bureau\ARCHIVES-PDF-INNOZH\" & LaDate & " " & Numbc & ".pdf", Quality:= _
Merci Jean Paul,
Mais j 'ai toujours mon problème. J'ai joint mon fichier complet.
Re,
Tu ne dois pas affecter la date comme cela sinon cela te renvois Faux et non pas une date formatée
tu dois mettre : LaDate = Format(Date, "dd.mm.yyyy")
De plus tu dois vérifier le non de fichier final la cellule E4 te renvois un caractère interdit
C:\Users\POPEY\OneDrive\Bureau\ARCHIVES-PDF-INNOZH\10.04.2022 FOR/04-2022-002.pdf