Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1668to1672
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
Teil aus Excel in Wordvorlage übernehmen
15.01.2019 15:36:48
Andre
Hallo Liebe Excel Profis,
ich bin es wieder mit einem neuen Problem/Aufgabe.
Und zwar will ich einen Teil aus meiner Excel Tabelle in eine Benutzerdefinierte Vorlage an einer bestimmten Stelle einfügen.
Das habe ich mit dem folgenden Modul(Dann über Button starten) versucht:

Sub WordDatei_erstellen()
Dim appWord     As Object
Dim docWord     As Object
Dim wks         As Worksheet
Set wks = ThisWorkbook.Worksheets("Angebot u Rechnung")
Set appWord = CreateObject("Word.Application")
Set docWord = appWord.Documents.Add("Pfad\Test123.dotx")
With docWord
.Bookmarks("Test").Range.Text = wks.Range("B6").Value
End With
End Sub

Also Textmarke(Test) in Wordvorlage Test123.dotx
Der code wird auch ohne Fehler ausgeführt, aber es passiert praktisch gar nichts..
Kann ich wenn das dann funktioniert den Bereich auch bspw. einfach auf wks.Range("B6:C9") erweitern?
Oder hat jemand einen Link mit einem guten Tutorial? Ich weiß man findet dazu schon einiges im Internet aber noch nichts hat bei mir funktioniert.
Oder hat jemand zufällig eine elegantere Variante parat?
Ich danke euch wieder einmal schon im Voraus :)
Grüße
Andre

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Teil aus Excel in Wordvorlage übernehmen
15.01.2019 15:53:13
Luschi
Hallo Andre,
laut Word-Vba-Online-Hilfe:

https://docs.microsoft.com/de-de/office/vba/api/word.documents.add?f1url=https%3A%2F%2Fmsdn.microsoft.com%2Fquery%2Fdev11.query%3FappId%3DDev11IDEF1%26l%3Dde-DE%26k%3Dk(vbawd10.chm158072846)%3Bk(TargetFrameworkMoniker-Office.Version%3Dv16)%26rd%3Dtrue
erstellst Du ein neues Word-Dokument auf der Basis der angegebenen Vorlagendatei - und damit wird alles in dieser neue Datei ausgeführt.
Vorhandene Dateien Öffnen: appWord.Documents.Open ...
Gruß von Luschi
aus klein-Paris
AW: Teil aus Excel in Wordvorlage übernehmen
15.01.2019 16:52:57
Andre
Hallo Luschi,
Danke für deine Antwort, leider weiß ich nicht genau wie ich das in die Tat umsetzen soll.
Indem ich das Add durch Open ersetze und eine entsprechende word Datei (docx) erstellt habe,
kommt nur ein Fehler raus (Excel wartet auf Elo Befehl oder sowas :D) und muss Excel über den task manager schließen.
Grüße
Andre
Anzeige
AW: Teil aus Excel in Wordvorlage übernehmen
15.01.2019 18:31:03
Luschi
Hallo Andre,
seit Office 2007 reicht es nicht mehr aus (egal ob Excel, Word, PowerPoint etc.), nur den Dateinamen anzugegeben, sondern es ist auch der Dateityp als Extra-Parameter erforderlich! Dafür ist bei 'Document.Open' der Format-Parameter zuständig (siehe Online-Vba-Hilfe).
Da Du eine *.dotx-Datei (Vorlage ohne Makros) öffnen willst, ist der Zahlenwert für die Word-Konstante 'wdOpenFormatXMLTemplate' anzugeben, da Excel sonst damit nichts anfangen kann; also 11.
Solange ich & die anderen Helfer nur im Nebel rumstochern müssen, weil Du keine Word-DEMO-Vorlage bereitstellst, war dies mein letzter Hinweis.
Also sollte der Öffnen-Befehl so aussehen:
Set docWord = appWord.Documents.Add(FileName:="Pfad\Test123.dotx", ReadOnly:=False, Format:=11)
Gruß von Luschi
aus klein-Paris
Anzeige
AW: Teil aus Excel in Wordvorlage übernehmen
17.01.2019 14:21:14
Andre
So Hallo nochmal,
ich habe jetzt eine abgespeckte Excel Tabelle und eine Worddatei erstellt (ich musste diese als doc abspeichern, da ein hochladen von docx nicht möglich war).
www.herber.de/bbs/user/126863.xlsm
https://www.herber.de/bbs/user/126865.doc
Ich habe jetzt einige Textmarken eingefügt und benannt.
Das mit dem Open Befehl von Luschi klappt auch, allerdings wäre es schon wichtig, dass die Vorlage irgendwo sicher liegt und nicht ausversehen überschrieben wird (wie es mit dem Open Befehl der Fall wäre, richtig?) und ein neues Dokument auf Grundlage der Vorlage erstellt wird, das dann irgendwo gespeichert werden muss. Was dann ja wohl mit dem Add Befehl funktionieren müsste. Aber irgendwas scheine ich dabei zu vergessen.
Wenn ich aus open Add mache und die Argumente ändere bzw weglasse und das word dokument als dotx abspeichere und ggf den Pfad ändere passiert nach wie vor nichts).
Nochmal vielen Dank!
Grüße
Andre
Anzeige
AW: Teil aus Excel in Wordvorlage übernehmen
18.01.2019 18:34:13
Luschi
Hallo Andre,
hatte erst jetzt Zeit, mich um Dein Problem zu kümmern, was habe ich gemacht:
- die doc/docx-Datei habe ich in eine echte Word-Vorlage umgewandelt (dotx)
  (Document-Template)
- und das ist ja auch der Sinn von Vorlagen
- es wird eine neues Dokument auf Basis dieser Vorlage erstellt
- ohne das der Anwender die Möglichkeit hat
- die Vorlage selbst zu ändern
- die geöffneten Textmarken in geschlossene Textmarken umgewandelt
- hat den Vorteil, das sie nach dem Füllen nicht mehr existent sind
- und damit nicht nachträglich manipuliert werden können!
- der Rest steht als Kommentar im Vba-Code der Exceldatei
Entpacke die Zipdatei in ein leeres Verzeichnis und schon kann es losgehen.
https://www.herber.de/bbs/user/126922.zip
Gruß von Luschi
aus klein-Paris
Anzeige
AW: Teil aus Excel in Wordvorlage übernehmen
15.01.2019 16:14:39
Andre
Ok also als ich den Rechner herunterfahren wollte und vorher alle Fenster geschlossen hatte, kam diese Meldung, dass etwas ein reibungsloses runterfahren behindert.
Als ich dann auf abbrechen gegangen bin kam sehr oft die Meldung ob die Änderungen an "Documenti" gespeichert werden sollen...
Wahrscheinlich muss man in dem Code dann noch sagen wo die neue Datei mit welchem Namen gespeichert wird?

301 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige