Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
24.04.2024 17:19:09
Anzeige
Archiv - Navigation
1168to1172
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 Tabelle in Excel absetzen (einlesen)

Word Tabelle in Excel absetzen (einlesen)
Lemmi
Hallo zusammmen,
ich habe viele Tabellen in Word (ausschließlich Tabellen).
Die Tabellen haben vielfach Bilder und Texte in den Word- Zellen eingebunden. Die Texte sind nicht immer "Fließtexte".
Übertrage ich die Tabelle mit Strg+A und Strg+C und füge Sie wieder mit Strg+V in die Excel ein, so setzt Excel die Inhalte in verschiendenen untereinander liegenden Zellen getrennt ab.
Wie kann ich aus Excel heraus den Import mit Hilfe eines Makos so auslesen das ab C6 eines aktiven Arbeitsblattes jede Zelle soviel Inhalt hat wie die Zellen in Word!
Ich möchte also Tabellen mit wenig Nacharbeit übertragen/ auslesen!
Letzt entlich möchte ich jede Zelle die in Word vorliegt 1:1 in Excel übertragen!
Formatierungsverluste sollten möglichts klein sein!
Gruß
Lemmi

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

Betreff
Benutzer
Anzeige
AW: Word Tabelle in Excel absetzen (einlesen)
22.07.2010 16:47:18
Ramses
Hallo
"...Letzt entlich möchte ich jede Zelle die in Word vorliegt 1:1 in Excel übertragen..:"
Das geht grundsätzlich schon mal nicht, da WORD Tabellen anders anlegt und verwaltet als EXCEL.
In WORD kannst du eine Grafik in eine "Zelle" einbinden/einfügen, in EXCEL ist das schon mal gar nicht möglich.
EXCEL interpretiert Sonder-/Steuerzeichen die in WORD-Tabellen verwendet werden anders, und erstellt u.U. dafür eine neue Zelle.
Da sehe ich ehrlich gesagt das sprichwörtliche schwarze Loch.
Gruss Rainer
AW: Word Tabelle in Excel absetzen (einlesen)
22.07.2010 21:59:01
Lemmi
Hallo Ramses,
ich habe hier mal im Archiv ein wenig geschaut. Franz hat einen Ansatz hierzu!
Kann man das nicht anpassen!
Hallo Julian,
hier zwei Varianten. Tabellen jeweils als ganzes kopieren und zellenweise übertragen.
Bei meinen Beispiel-Prozeduren ist die Anwendung Word gestartet und die Worddatei geschlossen.
Gruß
Franz
'Erstellt mit Excel 2003
Sub TabellenKopierenausWordDok()
'Wordtabelle am Stück kopieren und einfügen
'Im Excel VBA-Editor unter Extras den Verweis auf die _
Microsoft Word Object Library aktivieren!!
Dim wks As Worksheet, Zeile As Long
Dim objDoc As Word.Document, strDocName As String
Dim objTab As Word.Table, iTab As Integer
Set wks = ActiveSheet
strDocName = "C:\Lokale Daten\Test\TabCopyTest.doc"
Zeile = 3 'Startzeile für das einfügen
'Worddocument schreibgeschützt öffnen
Set objDoc = Word.Documents.Open(Filename:=strDocName, ReadOnly:=True)
With wks
For iTab = 1 To objDoc.Tables.Count
Set objTab = objDoc.Tables(iTab)
objTab.Range.Copy
.Cells(Zeile, 1).Activate
'Wordtabelle als Text ohne Formate einfügen
.PasteSpecial Format:="Unicode-Text", Link:=False, _
DisplayAsIcon:=False
'Wordtabelle als HTML mit Zell-Formaten einfügen
'      .PasteSpecial Format:="HTML", Link:=False, DisplayAsIcon:= _
False
'Nächste Einfügezeile
Zeile = .Cells.SpecialCells(xlCellTypeLastCell).Row + 2
Next
End With
objDoc.Close savechanges:=False
End Sub
Sub TabellenKopierenausWordDok_Var()
'Wordtabelle zellenweise in Excel eintragen
'Im Excel VBA-Editor unter Extras den Verweis auf die _
Microsoft Word Object Library aktivieren!!
Dim wks As Worksheet
Dim lngZeileExcel As Long, lngSpExcel As Long
Dim objDoc As Word.Document, strDocName As String
Dim objTab As Word.Table, iTab As Integer
Dim varInhalt, lngZeile As Long, lngSpalte As Long
Set wks = ActiveSheet
strDocName = "C:\Lokale Daten\Test\TabCopyTest.doc"
lngZeileExcel = 3 'Startzeile für das einfügen
'Worddocument schreibgeschützt öffnen
Set objDoc = Word.Documents.Open(Filename:=strDocName, ReadOnly:=True)
With wks
For iTab = 1 To objDoc.Tables.Count
Set objTab = objDoc.Tables(iTab)
For lngZeile = 1 To objTab.Rows.Count
lngSpExcel = 1 '1. Spalte in die Woedinhalte eingetragen werden sollen
For lngSpalte = 1 To objTab.Columns.Count
'Inhalt Wordzelle
varInhalt = objTab.Cell(lngZeile, lngSpalte).Range.Text
'letzte beiden Zeichen abschneiden
varInhalt = Left(varInhalt, Len(varInhalt) - 2)
'in Exceltabelle eintragen
wks.Cells(lngZeileExcel, lngSpExcel).Value = varInhalt
'nächste Einfüge Spalte im Exelblatt
lngSpExcel = lngSpExcel + 1
Next
lngZeileExcel = lngZeileExcel + 1
Next
'Leerzeilen zwischen Tabellen
lngZeileExcel = lngZeileExcel + 2
Next
End With
objDoc.Close savechanges:=False
End Sub

Gruß
Lemmi
Anzeige
Noch offen...
22.07.2010 22:04:43
Ramses
Hallo
Damit werden keine Bilder importiert.
Wenn du einen Code hast, probier ihn doch einfach aus.
Was soll ich denn anpassen ?
Ich habe doch keine Ahnung wie deine Word-Dokumente aussehen.
Sorry,... ich bin draussen
Gruss Rainer

301 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige