Bonjour,
Je dois insérer une phrase sur plusieurs documents Word.
Comment puis-je faire sans devoir "ouvrir-insérer-sauver" sur chaque document Word (à savoir que j'en ai une centaine) ??
Merciii
Bonjour,
Je dois insérer une phrase sur plusieurs documents Word.
Comment puis-je faire sans devoir "ouvrir-insérer-sauver" sur chaque document Word (à savoir que j'en ai une centaine) ??
Merciii
Salut Lucazzo,
Soit tu as cliqué sur involontairement, soit tu as trouvé une solution dans ce cas bravo mais il est habituel de la fournir pour les autres DVPnautes qui pourraient avoir le même problème que toi. C'est l'esprit même de ce forum : "Partager nos expériences" comme on l'a fait pour toi, je l'espère.
On est impatient de connaître ta solution. A très bientôt.
@+
Bonjour,
Non, ce n'était pas involontaire.
N'ayant pas trouvé de réponse, j'ai du me débrouiller autrement et changer certaine chose dans ma logique.
C'est pour cette raison que j'ai fermé le sujet.
Par contre, je suis prenneur si vous avez une solution (pour ma curiosité).
Merci
Salut,
Sans VBA, ce n'est pas possible.
Il suffit d'une petite macro pour y parvenir.
On fait une boucle sur les fichiers, on ouvre, on colle et on ferme.
J'ai pas encore de décodeur, alors, postez en clair ! Comment mettre une balise de code ?
Débutez en VBA
Mes articles
Dans un MP, vous pouvez me dire que je suis beau, ... mais si c'est une question technique je ne la lis pas ! Vous êtes prévenus !
Bonjour et désolé de revenir sur ce sujet.
Pourriez-vous me donner quelques astuces concernant le code VBA ? Quelques chose de simple si possible..
Merci pour votre aide.
Salut,
Il faut en premier lieu récupérer le répertoire qui contient les document.
Pour travailler sur les fichiers du répertoire, on peut faire appel au FSO.
http://warin.developpez.com/access/fichiers/
Pour ouvrir le répertoire, on utilise un objet FileDialog de la suite Office.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 Sub TestOlivier() Dim oDlg As FileDialog Set oDlg = Application.FileDialog(msoFileDialogFolderPicker) oDlg.Show MsgBox oDlg.SelectedItems(1) Set oDlg = Nothing End Sub
J'ai pas encore de décodeur, alors, postez en clair ! Comment mettre une balise de code ?
Débutez en VBA
Mes articles
Dans un MP, vous pouvez me dire que je suis beau, ... mais si c'est une question technique je ne la lis pas ! Vous êtes prévenus !
Merci pour votre code.
Ceci me permet de choisir un dossier contenant tous mes fichiers Word.
Mais après ??
Ma difficulté est d'insérer (tout à la fin par exemple) une ligne dans mon document Word et de le sauvegarder ensuite pour le refermer. Et ainsi de suite avec les autres..
Actuellement, j'ai ce bout de code :
Merci pour votre aide.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28 Private Sub CommandButton1_Click() Dim Fso As Object Dim FsoRepertoire As Object Dim FsoFichier As Object Dim objWord As New Word.Application Dim chemin As String Dim strRepertoire As String strRepertoire = "C:\TEMP\Template" Set Fso = CreateObject("Scripting.FileSystemObject") Set FsoRepertoire = Fso.GetFolder(strRepertoire) For Each FsoFichier In FsoRepertoire.Files chemin = FsoFichier objWord.Documents.Open chemin objWord.Visible = True Selection.PasteAndFormat (wdPasteDefault) ActiveDocument.Save objWord.Documents.Close Set objWord = Nothing Next End Sub
Salut,
Voilà en quelques lignes
Pour ouvrir le document
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 Sub ListerFichiers() Dim oFSO As FileSystemObject Dim oFol As Folder Dim oFil As File Set oFSO = New FileSystemObject Set oFol = oFSO.GetFolder("c:\temp") For Each oFil In oFol.Files Debug.Print oFil.Path Next Set oFol = Nothing Set oFSO = Nothing
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 Sub ListerFichiers() Dim oFSO As FileSystemObject Dim oFol As Folder Dim oFil As File Dim oDoc As Document Set oFSO = New FileSystemObject Set oFol = oFSO.GetFolder("c:\temp") For Each oFil In oFol.Files If Right(oFil.Name, 3) = "doc" Then Set oDoc = Documents.Open(Name:=oFil.Path) 'Ajout du texte oDoc.Save oDoc.Close Next oFil Set oDoc = Nothing Set oFol = Nothing Set oFSO = Nothing End Sub
J'ai pas encore de décodeur, alors, postez en clair ! Comment mettre une balise de code ?
Débutez en VBA
Mes articles
Dans un MP, vous pouvez me dire que je suis beau, ... mais si c'est une question technique je ne la lis pas ! Vous êtes prévenus !
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager