Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Word Dokument in Excel einlesen

Word Dokument in Excel einlesen
11.08.2008 11:24:00
Silva

Hallo an alle Exceluser,
ich stehe mal wieder vor einer neuen Herausforderung und komme nicht weiter.
Ich habe ca. 100 Worddateien (ALLE gleich aufgebaut). Und ich habe 1 Exceldatei.
Jetzt möchte ich eine definierte Anzahl an Informationen automatisch aus den Worddateien in Excel einlesen!
Die Informationen stehen im Wordokument an unterschiedlichen Stellen (als Text, als Text in Wordtabelle) Bsp. km-stand, Motorennummer, Betriebsstunden, etc.
Diese Informationen sollen jetzt Spaltenweise in Excel eingelesen werden d.h. Zelle B1 = km-Stand, B2 = Motorennummer, B3 0 Betriebsstunden, etc. ... --> pro Worddokument gibt es eine neue Zeile in Excel mit den entsprechenden Infos.
Die Frage ist, wie mache ich das?
Die Worddateien nacheinander öffnen ist kein Problem ...
Bin für alle Lösungsvorschläge, Hinweise wo ich die Lösung finde, etc. sehr dankebar!
Gruss und Dank,
Silva

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Word Dokument in Excel einlesen
11.08.2008 17:36:37
Tino
Hallo,
hier mal ein Beispiel.
Um aber Deinen Text raus zu filtern, muss man deine Worddatei besser kennen.
!!! benötigt den Verweis Microsoft Word 11.0 Object Library !!!
(kann auch 10.0 oder so sein, ist Versionsabhängig)


Option Explicit
Sub WordNachExcel()
Dim objWordApp As New Word.Application
Dim objWordDok As Word.Document
Dim Pfad As String, strFile As String
Dim varText As Variant
On Error GoTo Fehler:
Application.ScreenUpdating = False
Pfad = _
IIf(Right$(ThisWorkbook.Path, 1) = "\", ThisWorkbook.Path, ThisWorkbook.Path & "\")
Set objWordApp = CreateObject("Word.Application")
objWordApp.Application.ScreenUpdating = False
objWordApp.Visible = False 'True zum ausblenden
strFile = Dir(Pfad & "\*.doc")
Do While strFile  "" 'Schleife bis keine Word mehr da
'Datei öffnen
Set objWordDok = objWordApp.Documents.Open(Pfad & strFile)
With objWordApp
'Text markieren
.Selection.WholeStory
'markierung in Veriable
varText = .Selection
'***hier muss der Text zerlegt werden um ihn in die Zellen zu schreiben
'ist nur ein Beispiel!!!!
Cells(Rows.Count, 1).End(xlUp).Offset(1, 0) = varText
End With
'Word wieder schließen
objWordDok.Close False
'Objektvar. wieder freigeben
Set objWordDok = Nothing
'nächstes Worddoc.
strFile = Dir
Loop
objWordApp.Application.ScreenUpdating = True
objWordApp.Quit
If Not objWordDok Is Nothing Then Set objWordDok = Nothing
If Not objWordApp Is Nothing Then Set objWordApp = Nothing
Application.ScreenUpdating = True
Exit Sub
Fehler:
On Error Resume Next
objWordDok.Close False
objWordApp.Quit
If Not objWordDok Is Nothing Then Set objWordDok = Nothing
If Not objWordApp Is Nothing Then Set objWordApp = Nothing
On Error GoTo 0
Application.ScreenUpdating = True
MsgBox "Fehler!", vbCritical
End Sub


Gruß Tino

www.VBA-Excel.de


Anzeige
AW: Word Dokument in Excel einlesen
12.08.2008 14:28:00
Silva
Hallo Tino,
erstmal vielen Dank für deine Antwort und den Code!!!
Allerdings komme ich damit noch nicht ganz klar. Was heisst "!!! benötigt den Verweis Microsoft Word 11.0 Object Library !!!".
das Makro läuft bei mir leider nicht. Vermutung: es liegt daran, dass ich obigen Hinweis nicht verstehe. Fehlermeldung: "Fehler beim kompillieren. Benutzerdefinierter Typ nicht definiert." in Codezeile "Dim objWordApp As New Word.Application" + folgende Dim
Das Worddokument besteht aus Tabellen.
Tabelle 1 = 1 Zeile, 1 Spalte --> Überschrift
Tabelle 2 = Spalte 1 ist eine verbunden Zelle von 5 Zeilen, in Zeile 1 gibt es 3 Spalten, in Zeile 2 - 5 jeweils 4 Spalten
Aus den Tabellen 2 - x müssen jeweils diverse Infos ausgelesen werden.
Tablelle 2 wiederholt sich im gesamten Dokument vom Aufbau her.
kann man jetzt sagen wie die Informationen ausgelesen werden können? (nur die Codesystematik, wie finde ich in Word bestimmt Stellen?)
Danke für deine / eure Hilfe
Gruss, Silva

Anzeige
AW: Word Dokument in Excel einlesen
12.08.2008 15:16:50
Tino
Hallo,
die Aktivierung des Verweises musst du im VBA- Editor unter
Extras – Verweise, in dieser Liste diesen Verweis Suchen und setzten.
Ohne direkte Beispieldateien kann ich Dir so leider nicht helfen, da dies unter Umständen recht komplex wird und du bestimmt Schwierigkeiten mit der Umsetzung meiner Angaben bekommst
Unter Beispieldatei verstehe ich eine Worddatei mit dem entsprechenden Aufbau und angaben welche Daten wo in die Exceldatei müssen.
Gruß Tino

AW: Word Dokument in Excel einlesen
12.08.2008 15:40:00
Silva
Hallo Tino,
ok, kein Problem! Hier das BeispielWordDokument (https://www.herber.de/bbs/user/54541.doc).
Vielen tausend Dank für deine Hilfe!!!!!!
Alle rot markierten Informationen (in Word) müssen zeilenweise in Excel. und das für alle ca. 100 Worddokumente.
Gruss Silva

Anzeige
AW: Word Dokument in Excel einlesen
12.08.2008 17:13:00
Tino
Hallo,
teste mal, denke daran zuvor den Verweis zu setzen.
https://www.herber.de/bbs/user/54544.xls
Eventuell musst du den Pfad noch anpassen.
Die Zeile
Pfad = _
IIf(Right$(ThisWorkbook.Path, 1) = "\", ThisWorkbook.Path, ThisWorkbook.Path & "\")
Geht davon aus, dass sich die Worddateien im gleichen Ordner wie die Exceldatei befinden.
Sonst mach aus dieser Zeile zum Beispiel:
Pfad= "C:\MeinPfad\"
Gruß Tino

AW: Word Dokument in Excel einlesen
13.08.2008 14:09:21
Silva
Hallo Tino,
ich habe das Makro jetzt getestet und es funktioniert einwandfrei.!!!! Super, vielen tausend Dank!!
Ich habe noch ein paar kleinere Anpassungen gemacht:
1.) Worddokumente werden ZEILENWEISE in Excel eingelesen
2.) anderer Kriterien definiert, welche Daten aus dem Worddokument ausgelesen werden sollen.
Jetzt habe ich noch eine zusätzliche Frage.
Ist es möglich, und wenn ja wie, "Freitext" ebenfalls auszulesen. Freitext im Sinne von Text, welcher nicht in ein Textfeld, in eine Tabelle, etc. integriert ist, sondern ganz normaler Fliesstext. Diesen Text kann ich ja dann nicht über Zellpositionen (A, B) definieren.
Vielen Dank nochmal!!!
Silva

Anzeige
AW: Word Dokument in Excel einlesen
13.08.2008 15:37:28
Tino
Hallo,
super dass es erst mal Funktioniert.
Für Freitexte ist dies wieder ein Problem, man muss die Position im Dokument finden, diesen Text wieder in einen String einlesen und in diesem wiederrum die Position deiner Textstelle herausfinden.
Gruß Tino

www.VBA-Excel.de


303 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige