![]() |
Tabellenportierung von MS Word nach MS Excel
Hallo!
Ich habe eine Wordtabelle, in der jede Zelle mehrere Zeilenumbrüche beinhaltet. Wenn ich nun die Tabelle markiere und mit Copy/Paste in Excel einfügen will, wird jeder Zeilenumbruch in eine eigene Zelle eine Zeile weiter unten gesteckt. Am besten wäre es, wenn jeder Zeilenumbruch eine eigene Zelle bekäme, allerdings eine Spalte weiter, nicht eine Zeile darunter! Zur Not wäre es aber auch ok, wenn alle Zeilenumbrüche EINER Wordzelle in eine Excelzelle kämen. Wie muss ich das machen? Ich habe mich schon eingehend mit OLE-Automation beschäftigt, wurde bisher aber nicht fündig. Vielen Dank im Voraus! |
Re: Tabellenportierung von MS Word nach MS Excel
Hallo rajuneon,
an welcher Stelle kommst Du nicht weiter? Bis bald Chemiker |
Re: Tabellenportierung von MS Word nach MS Excel
Am Anfang ;-)
Ich habe überhaupt keine Vorstellung, wie ich das realisieren kann, den Zeilenumbruch umzuwandeln. |
Re: Tabellenportierung von MS Word nach MS Excel
Hallo rajuneon,
Zitat:
Der Anfang ist das Starten der Word- und Excel Applikation, welche Bindung soll verwendet werden, soll das Programm für mehre Excel und Word-Versionen verwendet werden usw. Bis bald Chemiker |
Re: Tabellenportierung von MS Word nach MS Excel
Du musst den Inhalt der Spalten anhand dessen zerlegen
|
Re: Tabellenportierung von MS Word nach MS Excel
über das Starten von Word und Excel habe ich mir ehrlich gesagt noch keine Gedanken gemacht. Aber das ist doch mithilfe von OLE nicht so schwer, oder?
|
Re: Tabellenportierung von MS Word nach MS Excel
Hallo rajuneon,
man müsste folgende Schritte machen: 1. Wordtabelle kopieren. 2. In Excel einfügen 3. Neues WorkBook öffnen 4. Die Tabelle aus Excel kopieren 5. Mit [Inhalt einfügen] einfügen, dabei Transponieren markieren // Dabei werden Spalten/Zeilen vertauscht. 6. [OK] drücken fertig. 7. Unter umständen die Formatierungen ändern. Bis bald Chemiker |
Re: Tabellenportierung von MS Word nach MS Excel
6. und 7. kann ich! :mrgreen:
|
Re: Tabellenportierung von MS Word nach MS Excel
Hallo rajuneon,
gut, also der erste Ansatz könnte in etwa so aussehen:
Delphi-Quellcode:
Den Rest kann mit Hilfe eines aufgezeichneten Excel-Macro leicht umgesetzt werden.
procedure TForm3.btWordStartenClick(Sender: TObject);
var aWord: OLEVariant; aExcel: OLEVAriant; begin aWord := CreateOleObject('Word.Application'); aWord.Visible := True; aWord.Documents.Add; aWord.Documents.Open('D:\Eigene Dateien von Internet\TestTabelle.doc'); aWord.Selection.WholeStory; aWord.Selection.Copy; aWord.Quit; aExcel:= CreateOleObject('Excel.Application'); aExcel.Visible := True; aExcel.Workbooks.add; aExcel.ActiveSheet.Paste; aExcel.Sheets['Tabelle1'].Select; aExcel.Sheets.Add; end; Bis bald Chemiker |
Re: Tabellenportierung von MS Word nach MS Excel
Danke! Das ist für den Anfang schon mal sehr hilfreich!
Aber das mit dem Makro ist ja genau das, worauf es ankommt! Wie mach ich es, dass das, was von Word in einer Zelle, aber mehreren Zeilen ist, in EINE Excelzelle bzw. mehrere Excelzellen HINTEREINANDER bekomme? |
Re: Tabellenportierung von MS Word nach MS Excel
Hallo rajuneon,
habe ich doch in #7 geschrieben. Dort steht wie man es ohne OLE machen kann. Bis Punkt 3 habe ich den Quellcode geschrieben. Du kannst Dir nun einen Macro in Excel aufzeichnen lassen und diesen in Delphi umsetzen. Tabelle in Excel markieren, mit Inhalt einfügen (Transponieren markieren) in das neue Workbook einfügen. Bis bald Chemiker |
Re: Tabellenportierung von MS Word nach MS Excel
ok! danke! hatte ich wohl nicht richtig gelesen :-)
So gehts auf jeden Fall! |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:19 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz