Ameliorer le code de la macro sauve pdf
Résolu
DAN41HOM
Messages postés
24
Date d'inscription
Statut
Membre
Dernière intervention
-
DAN41HOM Messages postés 24 Date d'inscription Statut Membre Dernière intervention -
DAN41HOM Messages postés 24 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
J'ai une macro de sauvegarde en PDF pour un classeur excel 2016.
Je cherche à l'améliorer afin qu'elle puisse me laisser la possibilité de sélectionner (ou programmer) un dossier( ce qu'elle fait déjà) mais surtout que je puisse donner éventuellement changer le nom du fichier sans que celui-ci s'ouvre dans reader.
Ils 'agit d'une macro qui reprend le nom du Mois sur la feuille.
Je suis obligé d'avoir la feuille du Mois ouverte alors que j'aimerais que le bouton Macro soit sur une autre (ex: Tableau de bord) et que je puisse lui désigner l'onglet du Mois à sauver.
Merci de votre aide.
J'ai une macro de sauvegarde en PDF pour un classeur excel 2016.
Je cherche à l'améliorer afin qu'elle puisse me laisser la possibilité de sélectionner (ou programmer) un dossier( ce qu'elle fait déjà) mais surtout que je puisse donner éventuellement changer le nom du fichier sans que celui-ci s'ouvre dans reader.
Ils 'agit d'une macro qui reprend le nom du Mois sur la feuille.
Je suis obligé d'avoir la feuille du Mois ouverte alors que j'aimerais que le bouton Macro soit sur une autre (ex: Tableau de bord) et que je puisse lui désigner l'onglet du Mois à sauver.
Merci de votre aide.
Dim dossier As String
'emplacement a derterminée
If MsgBox(" Générer PDF Mois ?", vbYesNo, _
"Demande de confirmation") <> vbYes Then Exit Sub
dossier = ChoixDossier
If dossier = "" Then Exit Sub
nom = dossier & "\" & Range("B2")
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=nom _
, Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas _
:=False, OpenAfterPublish:=True
End Sub
Function ChoixDossier()
If Val(Application.Version) >= 10 Then
With Application.FileDialog(msoFileDialogFolderPicker)
.InitialFileName = ActiveWorkbook.Path & "\"
.Show
If .SelectedItems.Count > 0 Then
ChoixDossier = .SelectedItems(1)
Else
ChoixDossier = ""
End If
End With
Else
ChoixDossier = InputBox("Choix du Répertoire ?")
End If
End Function
End sub
A voir également:
- Ameliorer le code de la macro sauve pdf
- Lire le coran en français pdf - Télécharger - Histoire & Religion
- Code ascii - Guide
- Comment déverrouiller un téléphone quand on a oublié le code - Guide
- Code de la route pdf - Télécharger - Transports & Cartes
- Code puk bloqué - Guide
4 réponses
Bonsoir,
Voici une solution dans laquelle tu saisies dans des inputbox :
- le nom de la feuille à sauvegarder en pdf
- le nom du fichier pour la sauvegarde
Bonne soirée
Jc
Voici une solution dans laquelle tu saisies dans des inputbox :
- le nom de la feuille à sauvegarder en pdf
- le nom du fichier pour la sauvegarde
Sub sauv_pdf() Dim dossier As String Dim ws As Object Dim nom, feuille As String 'emplacement a derterminée If MsgBox(" Générer PDF Mois ?", vbYesNo, _ "Demande de confirmation") <> vbYes Then Exit Sub Set ws = Sheets(InputBox("Quelle feuille souhaitez-vous sauvegarder?")) dossier = ChoixDossier If dossier = "" Then Exit Sub nom = dossier & "\" & InputBox("Nom du fichier :") ws.ExportAsFixedFormat Type:=xlTypePDF, Filename:=nom _ , Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas _ :=False, OpenAfterPublish:=False End Sub
Bonne soirée
Jc
Bonjour de nouveau,
En reprenant de nouveau le code fourni par titeufdu89et qui marche à merveille, encore merci à lui, , j'aimerais avoir une mgbox nous permettant d'avoir le choix entre l'ouverture où pas dans Reader.
Nous sommes aperçu que pour des contrôles de temps en temps on avait besoin de cette possibilité.
Désolé, j'aurais le prévoir.
Merci à Vous.
DanVoit.
En reprenant de nouveau le code fourni par titeufdu89et qui marche à merveille, encore merci à lui, , j'aimerais avoir une mgbox nous permettant d'avoir le choix entre l'ouverture où pas dans Reader.
Nous sommes aperçu que pour des contrôles de temps en temps on avait besoin de cette possibilité.
Désolé, j'aurais le prévoir.
Merci à Vous.
DanVoit.
Bonjour DanVoit
Tu peux essayer ce code :
Bonne fin de journée
Jc
Tu peux essayer ce code :
Sub sauv_pdf() Dim dossier As String Dim ws As Object Dim nom, feuille As String 'emplacement a derterminée If MsgBox(" Générer PDF Mois ?", vbYesNo, _ "Demande de confirmation") <> vbYes Then Exit Sub Set ws = Sheets(InputBox("Quelle feuille souhaitez-vous sauvegarder?")) dossier = ChoixDossier If dossier = "" Then Exit Sub nom = dossier & "\" & InputBox("Nom du fichier :") If MsgBox("Souhaitez-vous ouvrir le fichier dans Reader?", vbYesNo) = vbNo Then ws.ExportAsFixedFormat Type:=xlTypePDF, Filename:=nom _ , Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas _ :=False, OpenAfterPublish:=False Else ws.ExportAsFixedFormat Type:=xlTypePDF, Filename:=nom _ , Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas _ :=False, OpenAfterPublish:=True End If End Sub
Bonne fin de journée
Jc