Enregistrement en pdf + msg box si nom existant et pouvoir le renommer
Bonjour,
je souhaiterais pouvoir enregistrer sur le bureau une feuille excel en pdf, et lui attribuer le nom à partir de deux cellules se trouvant dans celui-ci (B5 et E15 par exemple).
Au cas ou le nom serait déjà utiliser, une petite boîte de dialogue préviendrait l’utilisateur, et lui donnerait la possibilité de la renommer…
A la fin de l’enregistrement, ouvrir le .pdf.
Merci à vous.
Bonjour Marclebio
ATTENTION ! Merci de lire la charte du forum [A LIRE AVANT DE POSTER] et notamment
- Ne postez pas la même question sur un autre forum pour éviter de faire perdre bêtement du temps aux membres sur un problème qui peut être déjà résolu sur l'autre forum. L'inverse est également valable, si vous avez déjà posé votre question sur un autre forum, ne créez pas un doublon sur ce forum (à moins d'avoir clôturé le sujet sur l'autre forum).
Sinon pour votre problématique
1) définir le nom d'enregistrement du fichier
2) Tester si le nom existe
3 ) Si existe demander de saisir le nouveau nom (inputbox)
Sub Test()
Dim CheminBureau As String, sNomFic As String, sPathFic As String
Dim oWSHShell As Object
' Définir le nom du fichier selon les 2 valeurs
sNomFic = Range("B5") & " " & Range("E15") & ".pdf"
' Récupérer le chemin du bureau
Set oWSHShell = CreateObject("WScript.Shell")
CheminBureau = "": CheminBureau = oWSHShell.SpecialFolders("Desktop")
' Vérifier si le fichier n'existe pas déjà
sPathFic = CheminBureau & sNomFic
Do While Dir(CheminBureau & sNomFic) <> ""
sNomFic = InputBox("Donner un autre nom au fichier :", "NOUVEAU NOM", sNomFic)
If Right(sNomFic, 4) <> ".pdf" Then sNomFic = sNomFic & ".pdf"
sPathFic = CheminBureau & sNomFic
Loop
' Exporter en PDF
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=sPathFic, _
Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, _
From:=1, To:=1, OpenAfterPublish:=True
End SubPour le nom, j'ai choisi un Inputbox() mais on pourrait très bien utiliser
sNomFic = Application.GetSaveAsFilename(InitialFileName:=sPathFic, fileFilter:="PDF Files (*.pdf), *.pdf", Title:="Sauvegarde du fichier")@+
Bonjour,
au temps pour moi, toute mes excuses. Je ne voulais pas enfreindre le règlement.
Je cherchais des solutions à mon problème, je ne voulais faire de tort, ni faire perdre de temps à qui que ce soit.
Merci pour votre solution, c'est super sympa.