Création de pdf multiple (VBA)

Bonjour,

j'ai réalisé un fichier Excel qui permet de comparer une entreprise sélectionnait dans un menu déroulant avec des moyennes des autres entreprises de ma base de données.

J'aimerais qu'il soit possible de créer l'ensemble des PDF de comparaison. C'est-à-dire sélectionner l'entreprise A puis créer PDF sélectionner l'entreprise B crée le pdf ... sachant que le nombre d'entreprises est variables ( en augmentation ...). Et que en plus la programmation doit comprendre un masquage des lignes vide et un demasquage.

Pour le moment j'ai réussi à trouver les informations pour réaliser l'enregistrement sous fichier PDF selon une cellule ainsi que la partie masquage et demascage.

Sub Masque_lig()
For Each cellule In [X261:X769]
If cellule.Value = "Vide" Then cellule.EntireRow.Hidden = True
Next cellule
End Sub

Sub pdf()
'
'
Dim nomFichier As String
nomFichier = [an9]

ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
"C:\VIA\" & nomFichier & " .pdf", Quality:=xlQualityStandard, _
IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:= _
True

End Sub

Sub Affiche_lig()
[X261:X769].EntireRow.Hidden = False
End Sub

Hélas je n'arrive pas à trouver de solution pour passer d'entreprise à entreprise.

Ps : je suis nouveau dans le monde du VBA

Merci d avance

Bonjour

Vos entreprises sont dans la colonne X ?
La cellule AN9 contient quoi comme information ? L'entreprise ou autre chose

Possible de mettre votre fichier sans données sensibles ?

Cordialement

NB : Lorsque vous postez un code, veillez à utiliser les balises de code en cliquant sur l'icone </> dans la barre de menu et en collant le code dans la fenetre.

Bonjour Dan,

je vais faire un fichier sans données sensibles afin de faciliter la compréhension Mais cela sera pas avant ce soir (au Québec).

Pour la cellule AN c'est juste une cellule qui génère le nom du fichier. En prenant le nom génériquee & le nom de l'entreprise.

Merci d'avance pour ton aide

Lhyna

Bonjour Lhyna, Dan,

Il faut passer par l’utilisation d’un dictionnaire :

Set dico = CreateObject("Scripting.Dictionary")

l’utilité: avoir la liste des entreprises sans doublons.

Puis parcourir le dico sur l’intégralité de la feuille en affichant ou en masquant les lignes vides en fonction du critère et éventuellement l’entreprise.

Une fois la mise en page faite, générer le PDF, il faudrait certainement rendre le nom dynamique en utilisant le clé du dico ( Nom_Entreprise) pour éviter d’écraser les pdf a chaque itération du dico.

Voilà une piste de réflexion pour la programmation

Rechercher des sujets similaires à "creation pdf multiple vba"