Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1520to1524
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

Zeilenumbruch nach Kopiervorgang

Zeilenumbruch nach Kopiervorgang
20.10.2016 14:55:21
Hubert
Hallo zusammen,
ich schreibe gerade ein Makro, welches Werte aus Excel in eine Vorlage in Word kopiert. Ich habe nun alles soweit, dass Word geöffnet wird, die Werte kopiert werden und an einer Textmarke in einer Tabelle landen. Allerdings ist dabei auch eine Liste mit Überschrift und jeweiliger Unterüberschrift, welche in Excel untereinander in eigenen Zellen angeordnet sind. Wenn ich nun also den Kopiervorgang starte, werden alle Zellen nacheinander an die Textmarke kopiert (in die gleiche Zelle der Tabelle) und stehen dann ohne Abstand oder Umbrüche da. Gibt es da eine Mögichkeit, quasi zwischen den Kopiervorgängen der einzelnen Zellen einen Zeilenumbruch einzufügen?
Danach sollten die Überschriften noch Fett werden, dazu ist mir bisher auch noch keine Lösung eingefallen, wisst ihr da vielleicht was dazu?
Ich benutze Office 2016 und Windows 7.
Liebe Grüße und vielen Dank schonmal im voraus,
Nik
Hier der Ausschnitt (Falls da irgendwelche VBA No-Go's dabei sind, verzeihts mir, ist mein erstes Programm in VBA ;-))
'Überschriften & Beschreibungen
'Gesamtkonzeption
'Unterüberschriften
If Cells(14, 13) "0" Then 'Prüfen ob Zelle einen Wert hat. (14, 13) = M14
If objDocument.Bookmarks.Exists(strBookmark1) = True Then 'Prüfen ob Textmarke existiert
objDocument.Bookmarks(strBookmark1).Range = .Range("D14").Text 'Einfügen des Wertes von D14 an die Textmarke 1
End If
End If
'Zeilenumbruch
If Cells(13, 13) "0" Then
If objDocument.Bookmarks.Exists(strBookmark1) = True Then
objDocument.Bookmarks(strBookmark1).Range = .Range("D13").Text
End If
End If
'Zeilenumbruch
If Cells(12, 13) "0" Then
If objDocument.Bookmarks.Exists(strBookmark1) = True Then
objDocument.Bookmarks(strBookmark1).Range = .Range("D12").Text
End If
End If
'Zeilenumbruch
If Cells(11, 13) "0" Then
If objDocument.Bookmarks.Exists(strBookmark1) = True Then
objDocument.Bookmarks(strBookmark1).Range = .Range("D11").Text
End If
End If
'Zeilenumbruch
If Cells(10, 13) "0" Then
If objDocument.Bookmarks.Exists(strBookmark1) = True Then
objDocument.Bookmarks(strBookmark1).Range = .Range("D10").Text
End If
End If
'Zeilenumbruch
If Cells(9, 13) "0" Then
If objDocument.Bookmarks.Exists(strBookmark1) = True Then
objDocument.Bookmarks(strBookmark1).Range = .Range("D9").Text
End If
End If
'Zeilenumbruch
'Überschrift (Fett)
If Cells(15, 13) "0" Then
If objDocument.Bookmarks.Exists(strBookmark1) = True Then
objDocument.Bookmarks(strBookmark1).Range = .Range("D8").Text
End If
End If

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zeilenumbruch nach Kopiervorgang
23.10.2016 15:27:11
Peter
Hallo Nik,
ich wundere mich nicht, dass ich offenbar der erste bin, der Dir antwortet. Dieses Forum ist m. E. zu 95 % ein reines Excel-Forum und nur wenige Mitglieder interessieren sich für die Verbindungen Excel-Word. Da ich Dein Thema interessant finde, habe ich mal versucht, eine Lösung zu entwickeln, die allerdings einen völlig anderen Ansatz hat.
Zunächst mal eine Excel-Datei, aus welcher die Übertragung von Excel-Daten zu Word gesteuert wird. Ich habe diese Datei "Uebertr_Excel_Word.xlsm" genannt. Wenn Du einen anderen Namen verwenden willst, musst Du die Makros entsprechend anpassen. Genaue Erläuterungen finden sich auf dem dritten Arbeitsblatt dieser Datei.
https://www.herber.de/bbs/user/108977.xlsm
In meinem Beispiel sind 8 Spalten enthalten, die man problemlos in ein A4-Hochkant-Formular von Word unterbringen kann. Beim Querformat von Word habe ich erfolgreich mit 15 Spalten getestet.
Bitte lege unter demselben Pfadnamen noch eine leere Excel-Datei namens "Dummy.xlsm" an. In einem Auto-Open-Makro von "Uebertr..." wird diese Datei geladen und sofort wieder geschlossen. Damit wird erreicht, dass in der Task-Leiste der Name der Datei (und nicht nur "Excel") erscheint. Dies ist für den weiteren Programmverlauf absolut wichtig.
Meine Musterdatei in Word habe ich "Dok1.docm" genannt. Die Datei ist jetzt aktuell im Hochformat; man kann jedoch auch das Querformat einstellen. Wenn die Excel-Daten zwischen zwei Textstellen in Word eingefügt werden sollen, dann sollten sich dort mindestens zwei Leerzeilen befinden. Hier der Upload von "Dok1.docm" (bitte die Zip-Datei extrahieren).
https://www.herber.de/bbs/user/108978.zip
Diese Datei dient als Mustervorlage. Wenn Du mehrere dieser Muster verwenden willst, könnte man auch eine Liste dieser Dateien per Makro abarbeiten.
Was nicht in meiner Problemlösung enthalten ist: Die Heranholung der Excel-Daten (mehrere Dateien?) und die Speicherung der mit den Einfügungen versehenen Word-Datei, auch hier könnte man eine Liste per Makro bearbeiten.
Ich arbeite mit WINDOWS7 und OFFICE2007 und hoffe, dass dies mit Deinen Systemen kompatibel ist.
Bitte mal ausprobieren; Rückmeldung wäre schön.
Mit freundlichem Gruß
Peter Kloßek
Anzeige

299 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige