I. Introduction
Aujourd'hui, le format le plus répandu est probablement le PDF, il ne connait pas de limite liée à la plateforme, ni au système d'exploitation utilisé. C'est donc un format universel pour l'échange de document. Malheureusement, ce format n'est apparu pour Word qu'avec la version 2007 et pour pouvoir l'utiliser il faut installer un complément fourni gratuitement par Microsoft. Un lien vers ce téléchargement est proposé dans la Foire Aux Questions pour Word sur DVP FAQ.
Pour les versions antérieures vous avez plusieurs possibilités, qui peuvent être payantes comme Adobe Acrobat; PDF Creator (en deux mots). Ou des version gratuites qui sont disponibles sur le WEB, la plus célèbre étant probablement PDFCreator (en un seul mot).
C'est cette à cette version que nous allons nous intéresser d'un peu plus près.
Après avoir téléchargé le logiciel d'installation, il faut passer à l'étape suivante : l'installation.
Pour cette étape, on ne peut plus facile et l'interface est en Français.
Pour cette étape, on ne peut plus facile et l'interface est en Français.
II. L'impression
Lorsque l'on transforme un document en fichier PDF, on ne parle pas de sauvegarde ou d'exportation mais d'impression. Lors de son installation, le logiciel à crée une imprimante logicielle qui va permettre la transformation de votre document en document PDF.
Si vous allez dans le panneau de configuration et dans la section imprimante, vous verrez une imprimante supplémentaire "PDFCreator". Un clic droit permet à l'aide du menu contextuel d'afficher les propriétés de l'imprimante. On y retrouve toutes les propriétés d'un imprimante classique.
Pour imprimer le document, il faut passer par le menu "Fichier" "Imprimer", ou utiliser la combinaison "Ctrl" + "P". Vous obtiendrez ensuite une boité de dialogue vous proposant de choisir l'imprimante. C'est l'imprimante par défaut qui est active.
Il faut changer l'imprimante par défaut et la remplacer par PDFCreator.
Validez par OK.
Validez par OK.
Dans cette boîte de dialogue, vous pouvez si vous le désirez changer le nom du document, par défaut c'est le nom du document qui est utilisé par PDFCreator. Si votre document n'a pas encore été sauvegardé, c'est le nom par défaut qui s'y trouve.
Vous pouvez aussi renseigner les propriétés du document.
Cette boîte de dialogue possède d'autres bouton que les traditionnels OK ou Cancel.
Le bouton mettre dans la file d'attente va ouvrir une autre boîte de dialogue contenant les éventuels documents déjà présent dans la liste d'attente.
Vous pouvez aussi renseigner les propriétés du document.
Cette boîte de dialogue possède d'autres bouton que les traditionnels OK ou Cancel.
Le bouton mettre dans la file d'attente va ouvrir une autre boîte de dialogue contenant les éventuels documents déjà présent dans la liste d'attente.
Le bouton option va ouvrir une boîte de dialogue permettant de modifier ou ajuster certains paramètres.
Une fois l'impression validée, la boîte de dialogue standard vous demandant de préciser l'endroit de la sauvegarde et le nom du fichier peut encore être changé.
Lorsque toutes ces manipulations sont terminées, votre document est transformé en un fichier PDF.
Lorsque toutes ces manipulations sont terminées, votre document est transformé en un fichier PDF.
Si votre document possède des hyperliens, seul les liens en "dur" seront présents dans votre PDF, les liens cachés, comme les tables des matières, seront ignorés. |
III. PDFCreator et le VBA
III-A. Code fourni par PDFCreator
Pour le VBA, PDFCreator est fourni avec un formulaire VBA. Pour pourvoir utiliser ce formulaire, il faut préalablement l'importer dans un module.
Il faut pour cela ouvrir l'éditeur VBA par la combinaison "Alt" + "F11", ou Outils, Macro, Visual Basic Editor.
Il faut pour cela ouvrir l'éditeur VBA par la combinaison "Alt" + "F11", ou Outils, Macro, Visual Basic Editor.
Ensuite, Fichier, Importer un fichier et le répertoire qui contient les fichiers est "C:\Program Files\PDFCreator\COM\MS Office\".
Une fois importé, le fichier donne accès a un formulaire.
Une fois importé, le fichier donne accès a un formulaire.
Derrière ce formulaire, on retrouve le code qui l'accompagne.
La première chose à faire pour utiliser ce formulaire c'est de le charger.
Pour charger le formulaire, on utilisera
La première chose à faire pour utiliser ce formulaire c'est de le charger.
Pour charger le formulaire, on utilisera
|
Le simple fait de charger le formulaire va initialiser la procédure d'impression.
|
La première action du code lors du chargement du formulaire est la vérification du nom et du chemin du document pour s'assurer que le document a bien été sauvegardé.
If Len(ActiveDocument.Path) = 0 Si le document n'a pas été sauvegardé, un message vous y invite.
Création d'une instance de PDFCreator.
Set PDFCreator1 = New clsPDFCreator Propriété cStart en lecture seule renvoie un booleen. Si cette propriété est fausse, le bouton de commande est désactivé et la procédure doit être stoppée. Un message dans la fenêtre des statuts est affiché en utilisant la procédure AddStatus. DefaultPrinter = ActivePrinter va stocker dans la variable DefaultPrinter le nom de l'imprimante active et ensuite SetPrinter "PDFCreator" va définir PDFCreator comme imprimante Active.
If Len(ActiveDocument.Path) = 0 Si le document n'a pas été sauvegardé, un message vous y invite.
Création d'une instance de PDFCreator.
Set PDFCreator1 = New clsPDFCreator Propriété cStart en lecture seule renvoie un booleen. Si cette propriété est fausse, le bouton de commande est désactivé et la procédure doit être stoppée. Un message dans la fenêtre des statuts est affiché en utilisant la procédure AddStatus. DefaultPrinter = ActivePrinter va stocker dans la variable DefaultPrinter le nom de l'imprimante active et ensuite SetPrinter "PDFCreator" va définir PDFCreator comme imprimante Active.
|
Si l'initialisation s'est déroulée correctement le bouton execute est actif et l'impression peut commencer. La routine tient alors compte des choix effectués dans le groupe d'options.
Si l'option 2 est activée, l'impression se déroule dans la procédure ci-avant et les pages obtenues par la procédure PrintPage 1 et 3 sont assemblées dans un même document avec .cCombineAll.
La partie impression est traitée par le code suivant
Si l'option 2 est activée, l'impression se déroule dans la procédure ci-avant et les pages obtenues par la procédure PrintPage 1 et 3 sont assemblées dans un même document avec .cCombineAll.
La partie impression est traitée par le code suivant
|
Le code qui suit sert à imprimer une page déterminée. Le numéro de cette page est défini dans la routine lancée par un clic sur le bouton d'impression du formulaire.
|
Que ce soit pour une page, plusieurs ou la totalité du document, c'est toujours la méthode printout qui est utilisée.
|
Cette partie sert à exporter vers l'utilisateur le message d'erreur.
|
Remet l'imprimante en mode attente une fois le document terminé.
|
Routine pour l'affichage des messages, pour chaque message, on ajoute le temps système.
|
Enlève PDFCreator et remet l'imprimante par défaut.
|
III-B. Code personnalisé.
Comment utiliser l'imprimante PDFCreator en utilisant son propre code et se passer du formulaire.
Le but est d'intégrer un morceau de code pour le lancer avec un bouton et obtenir en final un document PDF.
Ne pas oublier d'ajouter la référence à PDFCreator dans notre projet.
Ci-dessous, le code qui va nous permettre de lancer l'impression d'un document en PDF. Il ne restera qu'à insérer un bouton dans la barre d'outils pour lancer cette routine.
Ci-dessous, le code qui va nous permettre de lancer l'impression d'un document en PDF. Il ne restera qu'à insérer un bouton dans la barre d'outils pour lancer cette routine.
|
Plusieurs choses sont importantes, la récupération du nom du document et son chemin. Ces deux données vont nous faciliter la tâche et nous allons pouvoir sauvegarder le document dans le même répertoire que notre document Word. Si le document n'a pas été enregistré, l'impression PDF se fera dans le répertoire C:\temp et aura comme nom de fichier documentPDF.pdf
Pour ajouter un bouton dans la barre d'outils, un clic droit, personnaliser, Commandes, Macro et le nom de la procédure devrait s'y trouver.
Nous sommes arrivés au bout.
NB : Dans la version précédente du tuto, je signalais l'activation de l'enregistrement automatique, mais suite à quelques problèmes rencontré, il est préférable de ne pas utiliser cette option.
Aucun commentaire:
Enregistrer un commentaire