Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1224to1228
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

word datei text finden

word datei text finden
peter.brosche@gmx.de
Hallo,
folgendes Problem:
ich möchte den Inhalt einer jeder in einem Word-Dokument befindlichen Tabelle in eine Zeile in Excel importieren.
Der Tabellen linke Spalte hat 4 Zeilen, die mittlere und rechte Spalte jedoch 12 Zeilen. Als wäre das nicht kompliziert genug hat die erste Zeile nur 2 Spalten. Aber eignetlich egal, bin ich in der linken oberen Zelle, komme ich mit 41 Tabulatoren in die rechte untere, wobei ich mehrmals in die linke (zeilenübergreifende) Spalte komme.
Jeder Tabelle linke obere Zelle fängt mit genau der selben Zeichenfolge an und die meisten Zelleninhalte sind Tabellenübergreifend auch identisch. Lediglich in die rechte Spalte darf Text eingegeben werden.
Jedes Word-Dokument hat mehrere dieser Tabellen.
Mit
appWord.Documents.Open sPfad & cDir
unter vorheriger Variablendeklaration kann ich das Dokument öffnen, aber alle (zugegebenermaßen abgelesenen) Versuche, dort zu der ersten Tabelle zu gelangen schlugen fehl.
Wer weiß einen Rat?
Danke schonmal
Peter

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: word datei text finden
19.08.2011 03:04:44
fcs
Hallo Peter,
hier wäre es extrem hilfreich, wenn du ein
Worddokument mit 2 Beispieltabellen und eine Exceltabelle mit dem gewünschten Ergebnis hier hochladen würdest.
Prinzipiell funktioniert es mit folgendem Makro, wobei die verbundenen Zellen in den Wordtabellen Kummer machen können.
Gruß
Franz
'Erstellt unter Excel 2007/Word 2007
Sub WordTabellenAuslesen()
Dim owdApp As Object
Dim owdDoc As Object, owdTab As Object, owdZelle As Object, sWordFile$
Dim iTable As Integer
Dim ZeileW&, SpalteW&, vWert
Dim ZeileE&, SpalteE&
Dim wb As Workbook, wks As Worksheet
On Error GoTo Fehler
Application.ScreenUpdating = False
Set wb = ActiveWorkbook
Set wks = wb.Worksheets(1)
sWordFile = "C:\Users\Public\Test\DocMitTabellen.doc"
Set owdApp = VBA.CreateObject("Word.Application")
owdApp.Visible = True
Set owdDoc = owdApp.Documents.Open(Filename:=sWordFile, ReadOnly:=True)
'Tabellen im Worddokument abarbeiten
For iTable = 1 To owdDoc.Tables.Count
Set owdTab = owdDoc.Tables(iTable)
ZeileE = ZeileE + 1
SpalteE = 0
For ZeileW = 1 To owdTab.Rows.Count
For SpalteW = 1 To owdTab.Columns.Count
Set owdZelle = owdTab.Cell(ZeileW, SpalteW)
SpalteE = SpalteE + 1
vWert = owdZelle.Range.Text
vWert = Left(vWert, Len(vWert) - 2) 'Zellenende-Zeichen abtrennen
vWert = RTrim(vWert)
vWert = Replace(vWert, Chr$(9), "  ") 'Tabschaltungen ersetzen
vWert = Replace(vWert, Chr$(13), Chr$(10)) 'Absatzschaltungen ersetzen
vWert = Replace(vWert, Chr$(11), Chr$(10)) 'manuelle Zeilenwechsel erstzen
wks.Cells(ZeileE, SpalteE).Value = vWert
NextSpalte:
Next
Next
Next
owdDoc.Close savechanges:=False
owdApp.Quit
Fehler:
With Err
Select Case .Number
Case 0 'alles ok
Case 5941 'tritt bei verbundenen Zellen in Word auf, wenn Zelle in _
Zeile, Spalte nicht vorhanden.
Resume NextSpalte
Case Else
MsgBox "Fehler-Nr.: " & .Number & vbLf & .Description
End Select
End With
Application.ScreenUpdating = False
End Sub

Anzeige
AW: word datei text finden
19.08.2011 11:11:23
peter.brosche@gmx.de
Hallo Franz,
hab die Word-Datei hochgeladen
https://www.herber.de/bbs/user/76248.doc
Es soll je Tabelle eine Excel-Zeile gefüllt werden. Wenn ich tabuliere, bin ich in den linken Spalten mehrmals, was aber nichts macht, da ich diese Zellen ausblenden, löschen kann, was auch immer. Es geht mir um die Findung von Überschneidungen bei Datumsangaben, was durch das Word-Dokument reichlich erschwert wird.
Bei mir hält der Code mit Fehler 5941 (Das angeforderte Element ist in der Sammlung nicht vorhanden) bei Zeile Set owdZelle = owdTab.Cell(ZeileW, SpalteW) an, hat aber die erste Zeile in A1 und B1 eingetragen, wie Du schon vermutet hast. kann man nicht beim Auffinden von "XY-Tab[*]" mit Tab von Zelle zu Zelle springen?
Gruß
Peter
Anzeige
AW: word datei text finden
19.08.2011 13:23:09
fcs
Hallo Peter,
ich hab jetzt mal deine Datei unter Office 2003 getestet.
Es wurden ohne Probleme alle Zellinhalte nach Excel ausgelesen.
Wenn bei dir der Fehler 5941 angezeigt wird, dann hast die im Makro vorhandene Fehlerbehandlung nicht korrekt oder unvollständig übernommen. Diese Fehlerbehandlung fängt den Fehler 5941 ab und macht mit der nächsten Spalte weiter.
Hast du möglicherweise die Zeile
On Error Goto Fehler
nicht mit kopiert? Diese sollte direkt nach der Deklaration der Variablen stehen.
Da die Wertübernahme funktioniert sehe ich keinen Grund, die Tabulatorschaltung im Makro nachzubauen und dann jeweils den selektierten Text auszulesen.
Gruß
Franz
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige