Publipostage avec Excel

Bonjour,

Je me demandais si vous pouviez me dépanner même si cela dépasse le cadre d'excel.

Je veux ouvrir un fichier excel qui contient ma base de données à partir de Word mais je veux, avant l'ouverture, changer le nom du fichier de données, et comme de raison, en vba.

Quelque chose semblable à Workbook_beforeopen...

Est-ce possible ?

Merci

Claire

Bonsoir Claire,

Indique simplement le chemin du fichier que tu veux ouvrir avec WorkBooks.Open :

1 - Ajouter la référence Excel dans la fenêtre VBE de Word : Outils/Référence/Microsoft Excel xx (ou xx représente la version d'Excel)

2 - En début de procédure, déclare la variable :

Dim Wbk As Excel.Workbook

3 - Ouvrir le classeur

Workbooks.Open MonChemin

MonChemin représente le chemin du fichier Excel

Bonjour Benead,

Je te remercie de ton aide mais mon problème ne se situe pas à ce niveau.

Je désire changer, avant l'ouverture du fichier Word, le nom de la base de données.

Bonne journée

Claire

Bonsoir,

Si je comprends bien, tu as un fichier Word qui fait un publipostage avec un fichier Excel qu'on nomme fichA et tu souhaiterais le remplacer par fichB ?

Ce que j'ai du mal à comprendre, c'est pourquoi tu veux changer le nom du fichier Excel avant d'ouvrir le fichier Word. Le nom et/ou l'emplacement du fichier Excel est stocké dans le fichier Word, il n'est donc pas possible de le modifier avant, et je n'y vois pas d'intérêt : il y a certainement une autre solution pour changer ce nom de fichier après l'ouverture. Si toutefois tu persistes dans cette voie, il faut stocker l'information en dehors du fichier Word pour qu'à l'ouverture du fichier, Word récupère cette information et modifie l'emplacement de la BD Excel... Mais on en est encore là : C'est au mieux à l'ouverture que se fait la modification dans le fichier Word.

Pour stocker cette information en dehors du fichier Word, il y a plusieurs possibilités : dans un autre fichier Word, un fichier Excel, la base de registre, un fichier ini...

Si ton besoin est de mettre à disposition à plusieurs utilisateurs une copie de ton publipostage, alors je te conseille de mettre le fichier Excel dans le même répertoire ou dans un sous répertoire, ensuite il faut entrer le chemin du fichier en valeur relative comme cela :

ThisDocument.Path & "\Publipostage\FichB.xls"

Dis m'en un peu plus si tu veux que je t'aide plus efficacement.

Bonjour Benead,

La personne, qui fera ce publipostage, n'a qu'une notion de base de Excel ou de Word.

Le fichier au départ se sert de la base de données de l'année précédente et là je le change pour celle de l'année courante. C'est pour cela que je voulais le changer avant l'ouverture pour qu'elle n'ait pas à le faire. Donc elle n'aura qu'a cliquer sur OK au départ.

J'ai pu régler mon problème en nommant ma base "caisse.xls" au lieu de Caisse 2014. Donc, quelque soit l'année, cela fera l'affaire.

Je te remercie encore une fois et bonne journée.

Claire

ClaireD,

Tu as raison de faire cela, c'est la meilleure méthode et la de loin la plus efficace. Et quand tu veux archiver ou sauvegarder ton fichier caisse.xls, c'est à ce moment qu'il faut mettre l'année.

Bonne soirée

Rechercher des sujets similaires à "publipostage"