Excel VBA Makro zum Auslesen von Seitenzahlen in Word Dokumenten
Hallo zusammen,
ich habe in einem Verzeichnis circa 50 Word Dokumente und möchte in einem Excel Blatt eine Übersicht über die Word Dateien erstellen. Dazu soll einfach nur der Word-Dateiname und die Seitenanzahl des Word Dokuments in die Excel Übersicht übernommen werden.
Kann mir jemand mit einem VBA Script aushelfen?
Vielen Dank,
Martin
ich habe in einem Verzeichnis circa 50 Word Dokumente und möchte in einem Excel Blatt eine Übersicht über die Word Dateien erstellen. Dazu soll einfach nur der Word-Dateiname und die Seitenanzahl des Word Dokuments in die Excel Übersicht übernommen werden.
Kann mir jemand mit einem VBA Script aushelfen?
Vielen Dank,
Martin
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 112649
Url: https://administrator.de/forum/excel-vba-makro-zum-auslesen-von-seitenzahlen-in-word-dokumenten-112649.html
Ausgedruckt am: 25.04.2025 um 14:04 Uhr
9 Kommentare
Neuester Kommentar
Hallo Martin4711 und willkommen im Forum!
Könnte etwa so aussehen:
Grüße
bastla
Könnte etwa so aussehen:
Sub WordStats()
Basis = "D:\Word-Dateien"
Typ = "doc" 'in Kleinbuchstaben
Set wd = CreateObject("Word.Application")
Zeile = 3 'ab dieser Zeile werden die Informationen in das Tabellenblatt eingetragen
Set fso = CreateObject("Scripting.FileSystemObject")
For Each Datei In fso.GetFolder(Basis).Files
If LCase(fso.GetExtensionname(Datei.Name)) = Typ Then
Set doc = wd.Documents.Open(Datei.Path)
Cells(Zeile, "A") = Datei.Name
Cells(Zeile, "B") = doc.BuiltinDocumentProperties(14)
doc.Close False
End If
Zeile = Zeile + 1
Next
Columns("A:B").AutoFit
Set wd = Nothing
End Sub
bastla

Für 50 Dateien:
1. dir *.doc > worddoku.txt
2. worddoku.txt in Excel importieren
3. Jedes Dokument aus der Textdatei öffnen und die Seitenzahl ermitteln
1. dir *.doc > worddoku.txt
2. worddoku.txt in Excel importieren
3. Jedes Dokument aus der Textdatei öffnen und die Seitenzahl ermitteln

Hallo bastla,
die Seitenanzahl gibt es unter:
Gruß Dieter
die Seitenanzahl gibt es unter:
Cells(Zeile, "B") = doc.Content.End
Gruß Dieter

Hallo bastla,
wenn ich bei mir doc's lade, dann steht bei mir in "doc.BuiltinDocumentProperties" nix drin (Debbuggerfehler)
Ich habe doc's mit 1,2,3,4, und 5 Seiten (allerdings leer) getestet und da hat die Seitenanzahl mit "doc.Content.End"
gestimmt?
Gruß Dieter
wenn ich bei mir doc's lade, dann steht bei mir in "doc.BuiltinDocumentProperties" nix drin (Debbuggerfehler)
Ich habe doc's mit 1,2,3,4, und 5 Seiten (allerdings leer) getestet und da hat die Seitenanzahl mit "doc.Content.End"
gestimmt?
Gruß Dieter
@did1954
Test unter Office2003 mit einigen Worddateien ("Test5.doc" enthält wie bei Dir nur leere Seiten - dafür aber gleich 12
):
Scheint so, als würden mit "Content.End" alle Zeichen (also auch sämtliche Steuerzeichen, wie zB Seitenvorschub) gezählt werden.
Grüße
bastla
Test unter Office2003 mit einigen Worddateien ("Test5.doc" enthält wie bei Dir nur leere Seiten - dafür aber gleich 12
doc.BuiltinDocumentProperties(14):
Test2.doc 2
Test1.doc 1
Test3.doc 2
Test4.doc 1
Test5.doc 12
doc.BuiltinDocumentProperties(16):
Test2.doc 4134
Test1.doc 1118
Test3.doc 1781
Test4.doc 2383
Test5.doc 0
doc.Content.End:
Test2.doc 4865
Test1.doc 1294
Test3.doc 2186
Test4.doc 3010
Test5.doc 12
Grüße
bastla

Hallo bastla,
es scheint so, dass .Content.End alle Textzeichen zählt. Aber mit .BuiltIn bekomme ich immer noch Debuggerfehler.
Meldung "nicht verfügbar". Habe noch Office XP?
Gruß Dieter
es scheint so, dass .Content.End alle Textzeichen zählt. Aber mit .BuiltIn bekomme ich immer noch Debuggerfehler.
Meldung "nicht verfügbar". Habe noch Office XP?
Gruß Dieter

Hallo bastla,
also jetzt aber, jetzt funktioniert BuiltIn doch (Syntaxfehler ?), aber mit falschen Seitenzahlen:
Doc01 = 1
Doc02 = 2
Doc03 = 3
Doc04 = 3
Doc05 = 3
Gruß Dieter
also jetzt aber, jetzt funktioniert BuiltIn doch (Syntaxfehler ?), aber mit falschen Seitenzahlen:
Doc01 = 1
Doc02 = 2
Doc03 = 3
Doc04 = 3
Doc05 = 3
Gruß Dieter