Bonjour,
j'ai réalisé une macro dont voici un extrait .
le but est de copier l'onglet BASE à la fin du classeur, de le renommer avec les valeurs de cellules sur la Feuille SUPPORT.
Puis de créer un dossier avec le nom de la feuille nouvellement créée.
ensuite de l'exporter en PDF dans le dossier nouvellement créé.
Ce qui dysfonctionne: la macro créée un nouveau classeur, ce qui n'est pas souhaitable, et bloque à la création du dossier.
voici le code et un fichier joint.
Merci pour votre aide
Henry
Sub export()
Dim NomFeuilleBase As String
NomFeuilleBase = Sheet("SUPPORT").Range("A1").Value & "_" & Sheet("SUPPORT").Range("B3").Value
Dim NomDossier As String
NomDossier = NomFeuilleBase
Dim CheminDossier As String
CheminDossier = ThisWorkbook.Path & "\"
'copier coller la nouvelle feuille à la fin du classeur et la renommer
Sheets("BASE").Copy
Sheets.Add after:=ActiveWorkbook.Sheets(Sheets.Count)
ActiveSheet.Name = NomFeuilleBase
'créer dossier avec nom de la nouvelle feuille
If Len(Dir(NomDossier, vbDirectory)) = 0 Then
MkDir CheminDossier & NomFeuiileBase
End If
' Enregistrer la Feuille en PDF dans le dossier créé
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=NomPdf, Quality:=xlQualityStandard, _
IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=False
End Sub
j'ai réalisé une macro dont voici un extrait .
le but est de copier l'onglet BASE à la fin du classeur, de le renommer avec les valeurs de cellules sur la Feuille SUPPORT.
Puis de créer un dossier avec le nom de la feuille nouvellement créée.
ensuite de l'exporter en PDF dans le dossier nouvellement créé.
Ce qui dysfonctionne: la macro créée un nouveau classeur, ce qui n'est pas souhaitable, et bloque à la création du dossier.
voici le code et un fichier joint.
Merci pour votre aide
Henry
Sub export()
Dim NomFeuilleBase As String
NomFeuilleBase = Sheet("SUPPORT").Range("A1").Value & "_" & Sheet("SUPPORT").Range("B3").Value
Dim NomDossier As String
NomDossier = NomFeuilleBase
Dim CheminDossier As String
CheminDossier = ThisWorkbook.Path & "\"
'copier coller la nouvelle feuille à la fin du classeur et la renommer
Sheets("BASE").Copy
Sheets.Add after:=ActiveWorkbook.Sheets(Sheets.Count)
ActiveSheet.Name = NomFeuilleBase
'créer dossier avec nom de la nouvelle feuille
If Len(Dir(NomDossier, vbDirectory)) = 0 Then
MkDir CheminDossier & NomFeuiileBase
End If
' Enregistrer la Feuille en PDF dans le dossier créé
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=NomPdf, Quality:=xlQualityStandard, _
IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=False
End Sub