Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Neues Word-doc aus Excel erstellen

Neues Word-doc aus Excel erstellen
27.11.2016 11:43:52
Barbara
Hi
würde gerne aus dem Excel ein Word-Dokument öffnen, bzw. erstellen, auf Basis einer Vorlage.
Hier mein makro zum öffnen eines Word-Dokuments aus Excel heraus:
Sub Makro_WordVorlage()
Dim sDatei As String    'Word-Vorlage inkl. Pfad
Dim sPfad As String     'Pfad der neuen Word-Datei
sDatei = "C:\Users\Babsi\Desktop\Lieferschein.dotx"
sPfad = "C:\Users\Babsi\Desktop\Kunden"
CreateObject("Word.application").Documents.Open(sDatei).Application.Visible = True
End Sub
Dabei ist die Vorlage bekannt: sDatei
auch der Pfad des Ordners: sPfad
aber nicht der Dateiname. Den soll sich der Anwender nach Bearbeiten des Word-Dokuments selbst aussuchen.
Geht das ohne Word-Makro?
LG,
Barbara
Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: Neues Word-doc aus Excel erstellen
27.11.2016 12:08:50
Hajo_Zi
Hallo Babara,
ich bin nicht der Word Mensch. Aber ich würde vermuten Du öffnest eine Datei und keine neue mit Vorlage?
Das müsste so was sein
.Add Template:="....."
wenn ich den Makrorecorder von Word benutze.
Gruß Hajo
Anzeige
AW: Neues Word-doc aus Excel erstellen
27.11.2016 15:33:01
Michael
Hi,
ich weiß nicht recht...
Die Logik ist doch, daß das Makro die Vorlage öffnet und sich dann "verabschiedet", sprich: gar keinen Einfluß mehr darauf hat, was der Anwender in Word so treibt.
In Word selbst braucht es ja kein Makro, da muß der Anwender nur den "Speicher (unter)"-Dialog verwenden.
Wenn Du in Excel zumindest *etwas* Kontrolle darüber haben möchtest, unter welchem Namen das abgespeichert wird, solltest Du den Namen *vorher* abfragen, die Datei gleich unter neuem Namen abspeichern und dann erst das Makro verlassen.
Vielleicht geht das mit einem
With CreateObject("Word.application").Documents.Open(sDatei)
.Application.Visible = True
.SaveAs "DateiNamenVariable" & ".docx"
end with
oder so ähnlich (habe leider keinen Schimmer).
Schöne Grüße,
Michael
P.S.: Doch, haut schon hin:
Sub Makro_WordVorlage()
Dim sDatei As String    'Word-Vorlage inkl. Pfad
Dim sPfad As String     'Pfad der neuen Word-Datei
'    sDatei = "C:\Users\Babsi\Desktop\Lieferschein.dotx"
sDatei = "C:\A_Forum_DL\Babsi_Vorlage.dotx"
'    sPfad = "C:\Users\Babsi\Desktop\Kunden\"  ' "\" am Ende!!!
sPfad = "C:\A_Forum_DL\"  ' "\" am Ende!!!
With CreateObject("Word.application")
.Visible = True
.Documents.Open (sDatei)
.ActiveDocument.SaveAs2 Filename:=sPfad & "Babsi_Datei.docx"
.Activate
End With
End Sub

Das "Babsi_Datei.docx" mußt halt durch einen vorher in Excel abgefragten Dateinamen ersetzen.
Anzeige
AW: Neues Word-doc aus Excel erstellen
28.11.2016 22:06:16
Barbara
Vorher Dateiname Abfragen geht nicht, da noch nicht bekannt.
Meine Frage bezieht sich ja nicht unbedingt auf eine Word, kann ja auch eine Excel-Datei sein:
Darf ich meine Frage präzisieren:
Wie kann ich per Makro eine Excel-Tabelle öffnen
sDatei = "C:\Users\Babsi\Desktop\Lieferschein.xlsm"
die ich dann nach Bearbeitung unter einem anderen Namen, der jetzt noch nicht festgelegt ist, jedoch der Pfad
sPfad = "C:\Users\Babsi\Desktop\Kunden"
speichern will.
Also den vorgeschlagene Pfad für "Speichern unter" mit sPfad festlegen.
LG, B.
Anzeige
m.E.s nicht ohne weiteres möglich
29.11.2016 15:44:10
Michael
Hi Barbara,
eigentlich ist es egal, um was für eine Datei es sich handelt: Dein Makro öffnet sie und "verabschiedet" sich. Was der Anwender hinterher macht, ist von Deiner öffnenden Datei aus nicht kontrollierbar.
So weit ist das aber nur das Ende *meiner* Logik; vielleicht fällt Hajo (oder irgendjemandem) noch was ein, etwa mit einem Add-In oder dann eben doch einem Makro in der jeweils aufgerufenen Datei, der man dann eben den Pfad mit übergeben muß.
Schöne Grüße,
Michael
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Neues Word-Dokument aus Excel erstellen


Schritt-für-Schritt-Anleitung

Um ein Word-Dokument aus Excel zu erstellen, kannst Du das folgende Excel VBA Makro verwenden. Dieses Beispiel geht davon aus, dass Du eine Word-Vorlage hast, die Du verwenden möchtest.

  1. Öffne Excel und drücke ALT + F11, um den VBA-Editor zu öffnen.
  2. Klicke auf Einfügen > Modul, um ein neues Modul zu erstellen.
  3. Kopiere den folgenden Code in das Modul:
Sub Makro_WordVorlage()
    Dim sDatei As String    'Word-Vorlage inkl. Pfad
    Dim sPfad As String     'Pfad der neuen Word-Datei
    Dim sDateiname As String 'Dateiname für das neue Dokument

    sDatei = "C:\Users\Babsi\Desktop\Lieferschein.dotx" 'Pfad zur Vorlage
    sPfad = "C:\Users\Babsi\Desktop\Kunden\"

    ' Hier kannst Du den Dateinamen abfragen
    sDateiname = InputBox("Bitte Dateinamen eingeben:", "Dateiname")

    With CreateObject("Word.application")
        .Visible = True
        .Documents.Open sDatei
        .ActiveDocument.SaveAs2 Filename:=sPfad & sDateiname & ".docx"
        .Activate
    End With
End Sub
  1. Schließe den VBA-Editor und führe das Makro aus.

Dieses Makro öffnet die Word-Vorlage und speichert sie als neues Dokument im angegebenen Pfad mit dem Namen, den Du eingibst.


Häufige Fehler und Lösungen

  • Fehler: "Das angegebene Dokument kann nicht gefunden werden."

    • Lösung: Überprüfe den Pfad zu Deiner Word-Vorlage (sDatei). Stelle sicher, dass die Datei existiert.
  • Fehler: "Das Makro kann nicht ausgeführt werden."

    • Lösung: Stelle sicher, dass die Makros in Excel aktiviert sind. Gehe zu Datei > Optionen > Sicherheitscenter > Einstellungen für das Sicherheitscenter und aktiviere die Makros.

Alternative Methoden

Wenn Du kein Makro in Word erstellen möchtest, kannst Du auch die Möglichkeit nutzen, die Word-Vorlage manuell zu öffnen und die Daten aus Excel zu kopieren. Eine weitere Option ist die Verwendung eines Word-Add-Ins, das Dir hilft, Dokumente aus Excel zu generieren.


Praktische Beispiele

Hier ist ein Beispiel für die Verwendung eines Excel-Dokuments zur Erstellung eines Word-Dokuments:

  1. Stelle sicher, dass Du eine Excel-Vorlage mit den entsprechenden Daten hast.
  2. Verwende das oben genannte Makro, um die Daten in ein Word-Dokument zu übertragen.
  3. Du kannst auch eine Excel-Vorlage für Lieferscheine verwenden, um sie als Word-Dokument zu generieren.

Tipps für Profis

  • Verwende Option Explicit am Anfang Deines Moduls, um sicherzustellen, dass alle Variablen deklariert sind.
  • Experimentiere mit den Word-Objekten, um fortgeschrittene Funktionen wie das Einfügen von Bildern oder das Formatieren von Text zu nutzen.
  • Wenn Du regelmäßig Word-Dokumente aus Excel generierst, erwäge, ein benutzerdefiniertes Word-Add-In zu erstellen, um den Prozess zu automatisieren.

FAQ: Häufige Fragen

1. Kann ich auch eine Excel-Datei aus Word erstellen?
Ja, Du kannst ein Makro in Word erstellen, das eine Excel-Datei öffnet und die Daten importiert.

2. Wie kann ich sicherstellen, dass mein Word-Dokument nach der Bearbeitung nicht überschrieben wird?
Du solltest immer einen Dialog zur Dateinamensabfrage einfügen, bevor Du das Dokument speicherst.

3. Ist es möglich, mehrere Word-Dokumente gleichzeitig zu generieren?
Ja, Du kannst eine Schleife in Deinem Makro erstellen, um mehrere Dokumente aus einer Liste zu generieren.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige