Modification plusieurs fichiers word/excel
aïematete
Messages postés
13
Statut
Membre
-
aïematete Messages postés 13 Statut Membre -
aïematete Messages postés 13 Statut Membre -
Bonjour,
Je travaille actuellement sous microsoft office 2007.
Je vais essayer d'être claire dans mon problème et mon souhait (pas facile...)
Je travaille dans une entreprise dans laquelle on exploite plusieurs affaires.
Pour chaque affaire on a un dossier.
A l'arrivée de chaque affaire, on copie un dossier "type" qu'on renomme.
Dans ce dossier type, on a de nombreux fichiers word et excel "types", càd qu'ils sont pré-remplis.
A chaque nouvelle affaire, je perds un temps monstre à remplir les mêmes informations (lieu, objet, numéro etc.) dans de multiples fichiers.
Je cherche à savoir s'il est possible d'utiliser un fichier (word ou excel) qui permettrait d'incrémenter une bonne fois ces informations.
Merci pour votre aide.
Je travaille actuellement sous microsoft office 2007.
Je vais essayer d'être claire dans mon problème et mon souhait (pas facile...)
Je travaille dans une entreprise dans laquelle on exploite plusieurs affaires.
Pour chaque affaire on a un dossier.
A l'arrivée de chaque affaire, on copie un dossier "type" qu'on renomme.
Dans ce dossier type, on a de nombreux fichiers word et excel "types", càd qu'ils sont pré-remplis.
A chaque nouvelle affaire, je perds un temps monstre à remplir les mêmes informations (lieu, objet, numéro etc.) dans de multiples fichiers.
Je cherche à savoir s'il est possible d'utiliser un fichier (word ou excel) qui permettrait d'incrémenter une bonne fois ces informations.
Merci pour votre aide.
A voir également:
- Modifier plusieurs fichiers excel en même temps
- Renommer plusieurs fichiers en même temps - Guide
- Modifier liste déroulante excel - Guide
- Modifier dns - Guide
- Excel trier plusieurs colonnes en même temps - Guide
- Modifier extension fichier - Guide
5 réponses
Le plus simple est de rassembler toutes ces informations dans un fichier Excel.
Pour "incrémenter" les fichiers Excel il suffit d'une formule qui vient chercher l'information adéquate et pour les Fichiers Word, le publipostage fait l'affaire.
Pour "incrémenter" les fichiers Excel il suffit d'une formule qui vient chercher l'information adéquate et pour les Fichiers Word, le publipostage fait l'affaire.
Voilà, si ça peut aider certains ou aiguillonner d'autres dans leurs recherches :
Je déclare les variables qui vont être utilisées dans toutes mes Sub :
La sub suivante retrouve le chemin du document excel : le chemin est retouvé même quand le dossier type a été recollé ailleurs. L'argument "doc" sera une partie du chemin qui restera le même (par exemple mon fichier word mondocument se trouvera toujours dans sous_sous_dossier, qui lui même se trouvera toujours dans sous_dossier)
La sub suivante met à jours mon publipostage qui a été préparé dans mon fichier mondocument
La sub suivante permet de lancer mon publipostage pour le fichier mondocument qui m'intéresse : 1 bouton par fichier
enjoy :)
Je déclare les variables qui vont être utilisées dans toutes mes Sub :
Public chemin0 As String Public chemin1 As String Public chemin2 As String Public doc As String
La sub suivante retrouve le chemin du document excel : le chemin est retouvé même quand le dossier type a été recollé ailleurs. L'argument "doc" sera une partie du chemin qui restera le même (par exemple mon fichier word mondocument se trouvera toujours dans sous_sous_dossier, qui lui même se trouvera toujours dans sous_dossier)
Sub chemin(doc As String) chemin0 = Workbooks(ActiveWorkbook.Name).FullName chemin1 = Workbooks(ActiveWorkbook.Name).Path chemin2 = chemin1 & doc End Sub
La sub suivante met à jours mon publipostage qui a été préparé dans mon fichier mondocument
Sub majpubli(chemin0 As String, chemin1 As String, chemin2 As String, doc As String)
'Lance le publipostage
Call chemin(doc)
Set WordApp = CreateObject("word.application")
WordApp.Visible = True
Set WordDoc = WordApp.Documents.Open(chemin2)
WordDoc.MailMerge.MainDocumentType = wdFormLetters
WordDoc.MailMerge.OpenDataSource Name:= _
chemin0 _
, Connection:= _
"Provider=Microsoft.ACE.OLEDB.12.0;User ID=Admin;Data Source=chemin0;Mode=Read;Extended Properties=""HDR=YES;IMEX=1;"";Jet OLEDB:System database="""";Jet OLEDB:Registry Path="""";Jet " _
, SQLStatement:="SELECT * FROM 'Feuil1$'", SQLStatement1:="", SubType:= _
wdMergeSubTypeAccess
WordDoc.MailMerge.ViewMailMergeFieldCodes = wdToggle
End Sub
La sub suivante permet de lancer mon publipostage pour le fichier mondocument qui m'intéresse : 1 bouton par fichier
Sub clickbouton1() doc = "\sous_dossier1\sous_sous_dossier1\mondocument.doc" chemin (doc) Call majpubli(chemin0, chemin1, chemin2, doc) End Sub
enjoy :)
Merci pour ton aide.
En effet, pour modifier un fichier excel à partir d'un autre ce n'est pas très compliqué.
Par contre, le publipostage ne m'intéresse pas vraiment (ou alors je n'ai pas vraiment compris comment ça fonctionne) :
à chaque fois que j'ouvrirais un de mes fichiers word il me redemandera d'effectuer le publipostage non?
En effet, pour modifier un fichier excel à partir d'un autre ce n'est pas très compliqué.
Par contre, le publipostage ne m'intéresse pas vraiment (ou alors je n'ai pas vraiment compris comment ça fonctionne) :
à chaque fois que j'ouvrirais un de mes fichiers word il me redemandera d'effectuer le publipostage non?
Il s'agit d'un dossier type, lui même composé de plusieurs dossiers et dans chaque dossiers il y a des feuilles excel et word qui ont besoin d'être modifiés à chaque fois qu'on copie/colle/renomme le dossier type (ça ne se passe qu'une fois par affaire)
Ce qui m'ennuie un peu avec le publipostage, c'est qu'il y a des personnes qui travaillent avec moi et que ça va enquiquiner tout plein de modifier le chemin pour le publipostage à chaque copie/colle/renomme de dossier type...
Ce qui m'ennuie un peu avec le publipostage, c'est qu'il y a des personnes qui travaillent avec moi et que ça va enquiquiner tout plein de modifier le chemin pour le publipostage à chaque copie/colle/renomme de dossier type...
Peut-être pourrais tu mettre à jour les données dans le dossier type avant de faire le copier / coller.
Dans ce cas il suffit de rompre les liaisons vers les fichiers externes avant de faire le copier coller.
Sinon, quel que soit le mode de liaison, le fait de déplacer la source obligera à indiquer le nouvel emplacement. A ma connaissance il n'est plus possible de faire un adressage relatif (./xxx) pour des données externes.
Dans ce cas il suffit de rompre les liaisons vers les fichiers externes avant de faire le copier coller.
Sinon, quel que soit le mode de liaison, le fait de déplacer la source obligera à indiquer le nouvel emplacement. A ma connaissance il n'est plus possible de faire un adressage relatif (./xxx) pour des données externes.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Merci Patrice, c'est vraiment ces histoires de chemins qui me cassent la tête
Je suis en train de voir pour créer une macro qui retrouve le nouveau chemin et lance le publipostage après que le dossier ait été copié/collé/renommé.
Dès que c'est à peu près propre et sans trop de bugs, je poste le tout! (sachant que j'ai pas mal de lacunes en VBA...)
Je suis en train de voir pour créer une macro qui retrouve le nouveau chemin et lance le publipostage après que le dossier ait été copié/collé/renommé.
Dès que c'est à peu près propre et sans trop de bugs, je poste le tout! (sachant que j'ai pas mal de lacunes en VBA...)