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

Druckbereich in Word kopieren

Druckbereich in Word kopieren
14.07.2016 13:50:18
Hugo
Hey Leute
Ich möchte gerne einen variablen Druckbereich markieren, kopieren und in ein Worddokument (Pfad: H:\Privat\Revisionsbericht.docx ; Textmarke "Liste") mit VBA einfügen lassen.
Für den Code zum festlegen des variablen Druckbereiches bin ich im Archiv fündig geworden. Für den Rest bin ich leider am Ende meines Lateins.
Kann mir ev. jemand von Euch weiterhelfen?
Jetzt schon vielen Dank.
Gruss Hugo

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Druckbereich in Word kopieren
14.07.2016 14:38:17
Michael
Hallo Hugo!
Ich bin mir nicht sicher, was Du mit einem "variablen Druckbereich" meinst. Aber hier eine Möglichkeit, wie der aktuelle Druckbereich eines bestimmten Blattes einer Mappe, in ein bestimmtes Word-Dokument an einer bestimmten Textmarke eingefügt werden kann:
Sub BereichNachWord()
'Kopiert den aktuellen Druckbereich des gewählten Blattes und fügt diesen
'als Excel-Tabelle im angegebenen Word-Dokument an der gewählten Textmarke ein
'----- Anpassen -----
Const Wdoc As String = "H:\Privat\Revisionsbericht.docx" 'Ziel-Dokument Word
Const QBlatt As String = "Tabelle1" 'Quell-Blatt Excel
Const Tm As String = "Liste" 'Name der Word-Textmarke
'----- Ende -----
Dim Wb As Workbook
Dim WsQ As Worksheet
Dim rQ As Range
Dim oWord As Object
Dim oDoc As Object
Set Wb = ThisWorkbook 'Ausgangspunkt: Diese Mappe
Set WsQ = Wb.Worksheets(QBlatt) 'Das Quell-Blatt dieser Mappe
'Word öffnen, wenn noch nicht offen
On Error Resume Next
Set oWord = GetObject(, "Word.Application")
If Err.Number  0 Then
Set oWord = CreateObject("Word.Application")
End If
Err.Clear
On Error GoTo 0
'Ziel-Dokument öffnen
Set oDoc = oWord.Documents.Open(Wdoc)
'Quell-Bereich kopieren...
With WsQ
'.hier den aktuellen Druck-Bereich des Quell-Blattes
Set rQ = .Range(.PageSetup.PrintArea)
rQ.Copy
End With
'Prüfen ob Textmarke im Dokument vorhanden ist, und
'kopierten Bereich als Excel-Tabelle einfügen
If oDoc.bookmarks.exists(Tm) = True Then
oDoc.bookmarks(Tm).Range.PasteExcelTable False, False, False
Else:
MsgBox "Textmarke [" & Tm & "] nicht vorhanden!", vbCritical, "Fehler"
End If
'Word/Ziel-Dokument anzeigen
With oWord
.Visible = True
.ActiveWindow.WindowState = 0
.Activate
End With
End Sub
Den Pfad zum Word-Dokument hab ich schon von Dir übernommen, ebenso den Namen der Textmarke ("Liste"). Wie das Quell-Blatt in Excel heißt musst Du evtl. anpassen (bei mir "Tabelle1").
LG
Michael

Anzeige
AW: Druckbereich in Word kopieren
14.07.2016 14:58:31
Hugo
Hallo Michael
Besten Dank für Deine schnelle Antwort. Ich habe den Code probiert. Das Markieren des Druckbereiches funktioniert einwandfrei.
Leider klappts mit dem Einfügen der Testmarke nicht. Ich habe schon versucht, die Textmarke zu Löschen und neu zu setzen. Geht auch nicht. Ebenso kann ich die Textmarke löschen und es kommt keine Fehlermeldung. Der Pfad und der Name der Textmarke stimmen.
Gruss Hugo

Funktioniert bei mir einwandfrei!
14.07.2016 15:33:17
Michael
Hallo Hugo!
Ich habe den vorher geposteten Code getestet; funktioniert bei mir einwandfrei - die Daten aus dem Druckbereich werden in Word an der Stelle der Textmarke eingefügt.
Kann leider den "Fehler" nicht nachvollziehen, daher ins Blaue...
Wird die Word-Datei geöffnet, auch wenn nichts aus Excel eingefügt wird?
Wenn Du das gleiche Word-Dokument als Ziel angibst, aber keine Textmarke namens "Liste" darin vorhanden ist - erhältst Du dann eine Infobox die darauf hinweist, dass die Textmarke nicht vorhanden ist? (Hab ich Dir nämlich eingebaut)?
LG
Michael
Anzeige

299 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige