2009-04-17 9 views
1

J'écris une macro dans MS Word.
J'ai besoin de la macro pour analyser une liste de noms de fichiers, de numéros de page et de notes et ne filtrer que les noms de fichiers et les numéros de pages. Chaque paragraphe (ligne) du document fait référence à un fichier différent, donc je suis en train de boucler l'instruction For/Next.Comment ajouter à un document Word avec des macros VBA

Pour chaque nouvelle ligne, je retire le nom de fichier, et pagenumbers et le placer dans une chaîne. Parallèlement à cela, j'ajoute également quelques notes dans la chaîne pour chaque nom de fichier. Avant d'aller à la ligne suivante dans le document, je veux sortir la chaîne que j'ai construit dans un document Word.

J'ai actuellement le mot document ouvert avec ce code:

Dim oWord as Object 
Set oWord = CreateObject("Word.Application") 
oWord.Documents.Open "C:\document.doc" 
oWord.visible = true 

Cela me permet d'ouvrir le document avec succès mais j'ai besoin d'aide pour déterminer comment la production à ce document. D'un point de vue conceptuel, je sais que je dois d'abord en faire le document actif, puis aller à la fin du document, puis ajouter à celui-ci.

Toute aide serait appréciée. Merci!

Répondre

5

Qu'en est-il ... plus here.

Sub test() 
    Dim app As Word.Application 
    Dim doc As Word.Document 

    Set app = CreateObject("Word.Application") 
    app.Visible = True 
    Set doc = app.Documents.Open("C:\test.doc") 
    doc.Content.InsertAfter "Hello World" 
    doc.Save 
    doc.Close 
    app.Quit 
End Sub 
0

Cela vous aidera à boucle à travers la liste des fichiers dans un répertoire donné

Sub ProcessDocs() 
    Dim rng As Range 
    Dim MainDoc As Document 
    Dim strFile As String 
    Const strFolder = "d:\Userfiles\yourname\testFiles\" 'change to suit 
    Set MainDoc = Documents.Add 
    strFile = Dir$(strFolder & "*.doc") ' can change to .docx 
    Do Until strFile = "" 
     'Extract your filename, pagenum here, and build a string 
     'write string into the file 
     strFile = Dir$() 
    Loop 

Tout en boucle, vous pouvez extraire les noms de fichiers, etc; créez votre chaîne et écrivez-la dans le fichier. J'espère que cela aide

+0

s'il vous plaît prendre soin d'expliquer le downvote! – Mehz

Questions connexes