VBA Création PDF

Bonjour à tous,

Je sollicite votre aide car le VBA, je ne connais pas du tout. Malgré que je regarde des tutos, pas concluant du tout.

Je souhaiterais avoir un bouton nommé "Généré PDF" dans l'onglet "courrier" aux alentours de la cellule R10, qui me génère le PDF de ce même onglet courrier.
Une fois le PDF créer, j'irai l'enregistrer au bon endroit.

En vous remerciant par avance pour votre aide.

13essai-32.zip (1.43 Mo)

Bonjour,

Nouveau Tuto,
Dans developpeur, Enregistrer une macro

image

Fichier Exporter / PDF / Publie ou tu le souhaite

image

Arreter l'enregistrement, puis va sur Visual Basic

image

Dans le module 1 tu auras un truc comme ça

image

On va dire que le nom du fichier pdf doit contenir ton numero d'étude qui est en cellule P22 de ta feuille "Courrier".
On va donc ajouter une ligne "Chemin PDF" qui va définir le chemin d'enregistrement.

CheminPDF = "C:\...\" & Worksheets("Courrier").Range("P22").Value

et on va modifier "Filename:="C:\...\essai-32.pdf"" en "Filename:= CheminPDF"

On va aussi modifier "Sub Macro1 ()" en "Sub SavePDF ()", un commentaire pour savoir ce que fais la macro et définir le type de variable.

image

Ensuite on ferme Visual Basic pour mettre un bouton

Developpeur / Inserer / Bouton

image

Clic vers R10 puis selectionne SavePDF

image

Et quand tu va cliquer sur ton bouton :

image

A+

Merci. J'essai ce soir en rentrant du boulot.

Bonjour Geof52,

Merci pour ton aide.

J'ai essayé et je suis arrivé jusqu'au bouton mais non il y a une erreur.

Je travail sur un serveur. Le chemin d'accès pour enregistrer le PDF c'est :

S:\TIP_HD_GENEVRIERS\00.COMMERCIAL\Vente\Offres clients Maiche

J'ai bidouiller dans la macro en suivant au mieux le tuto.

As tu une idée de l'erreur ?

13essai-32.zip (1.43 Mo)

En faite, il faudrait juste qu'il me génère le PDF, pas de besoin d'enregistrement automatique car je vais pas les ranger au même endroit.

Comme ça pour le lien CheminPDF

Sub generePDF()
'
' generePDF Macro
'
Dim CheminPDF As String
CheminPDF = "S:\TIP_HD_GENEVRIERS\00.COMMERCIAL\Vente\Offres clients Maiche\" & Worksheets("Courrier").Range("P22").Value
'
    ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
        CheminPDF, Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas _
        :=False, OpenAfterPublish:=True
End Sub

Générer un pdf sans l'enregistrer ?

Je te remercie beaucoup sa fonctionne.

En faite quand je je ne souhaite pas enregistrer : c'est qu'au final, je dois aller l'enregistrer dans le dossier spécifique du client. Et là j'ai peur d'oublier d'aller le déplacer dans le bon dossier client. En plus, je ne vais pas être le seul à l'utiliser.

Du coups sa me donne une idée.

Est ce possible que le nom de fichier soit un combiné du numéro d'étude, un espace, + le libelle de prestation en O13 onglet "a renseigner)" ?

Et qu'au final il recherche le bon dossier ou il doit l'enregistrer (pour ce faire, je nommerai les dossier à l'identique de la cellule C2 ?

S:\TIP_HD_GENEVRIERS\00.COMMERCIAL\Vente\

es

Sa devient compliqué mon histoire..

Est ce possible que le nom de fichier soit un combiné du numéro d'étude, un espace, + le libelle de prestation en O13 onglet "a renseigner)" ?

C'est justement le but de la variable "Chemin PDF" (pas besoin de déplacer le fichier apres avoir été généré)

essai comme ça du coup

Sub generePDF()
'
' generePDF Macro
'
Dim CheminPDF, DossierPDF, FichierPDF As String

CheminPDF = "S:\TIP_HD_GENEVRIERS\00.COMMERCIAL\Vente\"
DossierPDF = Feuil1.Range("C2").Value & "\"
FichierPDF = Worksheets("Courrier").Range("P22").Value & " " & Feuil1.Range("O13").Value

CheminPDF = CheminPDF & DossierPDF & FichierPDF

    ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
        CheminPDF, Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas _
        :=False, OpenAfterPublish:=True

End Sub

je nommerai les dossier à l'identique de la cellule C2

Oui exactement (juste pour confirmer la cellule C2 c'est bien celle de la feuille "A renseigner" ?)

Il me met une erreur :

a3

Je pense avoir créer le bon nom de dossier

a1 a2

Oui exactement (juste pour confirmer la cellule C2 c'est bien celle de la feuille "A renseigner" ?) : Oui

Pas au bon endroit puisque tu m'as donné

S:\TIP_HD_GENEVRIERS\00.COMMERCIAL\Vente\

A la place de

S:\TIP_HD_GENEVRIERS\00.COMMERCIAL\Vente\Offres clients Maiche

A toi de voir ou tu souhaites mettre le dossier mais faut qu'il soit en raccord avec la macro

Bonjour Geof52,

J'ai refais la modif du chemin, est c'est OK.

Un Grand MERCI.

Rechercher des sujets similaires à "vba creation pdf"