Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Word aus Excel heraus beenden

Word aus Excel heraus beenden
10.03.2016 15:27:43
Chris
Hallo Forum,
Ich möchte aus Excel heraus prüfen, ob Word geöffnet ist.
Falls Word geöffnet ist und ein Dokument besteht, soll
1) Eine MSGBox angezeigt werden mit dem Hinweis diese Word Datei zuerst zu speichern.
2) Nach Klick auf ok, Wechsel zu Word und Speichern unter
Ist Word geöffnet und minimiert ohne aktives Dokument soll Word ohne vorherige Nachfrage beendet werden.
Schon mal Danke für Eure Unterstützung,.
Chris

Anzeige

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Word aus Excel heraus beenden
11.03.2016 11:57:19
Steve
Hallo Chris,
das würde ich wie folgt erledigen:
Sub Test()
Dim objWord As Object
On Error Resume Next
Set objWord = GetObject(, "Word.Application")
If Err.Number = 429 Then  ' keine Word-Instanz vorhanden
Err.Clear
Else
MsgBox "Bitte Datei zuerst speichern!", vbInformation, "Hinweis"
objWord.Activate
Application.SendKeys "{F12}" 'Speichern unter
End If
On Error GoTo 0
End Sub
lg Steve

Anzeige
AW: Word aus Excel heraus beenden
11.03.2016 14:00:23
Chris
hallo Steve,
danke für das makro. Tut nicht ganz das, was es soll:
1) Ich erhalte immer die msgbox - auch dann, wenn kein Word geöffnet ist.
2) Word soll nach dem Speichervorgang durch F12 geschlossen werden. Es bleibt jedoch auf.
Habe es mit objWord.quit nach der Sendkeys Anweisung probiert, leider ohne Erfolg.
Gruß
Chris

Anzeige
AW: Word aus Excel heraus beenden
11.03.2016 14:37:55
Steve
Hallo Chris,
mein Fehler lag darin begründet, dass ich nicht die entsprechende Library aktiviert hatte und damit eine Kommunikation zws. Excel und Word nicht gegeben war. Jetzt kann man auch ein paar vernünftige Befehle nutzen!
Sub Test()
' Wichtig!!
' unter "Extras" - "Verweise" einen Verweis auf die "Microsoft Word X.0 Object-Library" setzen!
Dim objWord As Word.Application
On Error Resume Next
Set objWord = GetObject(, "Word.Application")
If Err.Number = 429 Then  ' keine Word-Instanz vorhanden
Err.Clear
On Error GoTo 0
Else
On Error GoTo 0
If objWord.Documents.Count = 0 Then
objWord.Quit
Else
MsgBox "Bitte Datei zuerst speichern!", vbInformation, "Hinweis"
objWord.Activate
'Application.SendKeys "{F12}" 'Speichern unter
objWord.Dialogs(xlDialogSaveAs).Show "C:\"
End If
End If
End Sub
Komischerweise ruft er bei mir (Office 2013) statt demSaveAs-Dialog nur das Hilfemenü auf. Falls das auch bei dir so ist, kannst du den SendKeys-Befehl entkommentieren und schmeißt die Zeile darunter raus.
lg Steve

Anzeige
AW: Word aus Excel heraus beenden
15.03.2016 06:18:04
Chris
Vielen Danke!
Jetzt läuft es bestens.
chris

Danke für die Rückmeldung, owT
15.03.2016 08:52:11
Steve
-
;
Anzeige
Anzeige

Infobox / Tutorial

Word aus Excel heraus beenden


Schritt-für-Schritt-Anleitung

Um Word aus Excel heraus zu beenden und sicherzustellen, dass Dokumente ordnungsgemäß gespeichert werden, kannst du das folgende VBA-Makro verwenden. Es ist wichtig, dass du die "Microsoft Word X.0 Object-Library" aktiviert hast. So gehst du vor:

  1. Öffne Excel und drücke ALT + F11, um den VBA-Editor zu öffnen.
  2. Klicke auf Extras und dann auf Verweise.
  3. Setze ein Häkchen bei der "Microsoft Word X.0 Object-Library".
  4. Füge das folgende Makro in ein Modul ein:
Sub Test()
    Dim objWord As Word.Application
    On Error Resume Next
    Set objWord = GetObject(, "Word.Application")
    If Err.Number = 429 Then  ' keine Word-Instanz vorhanden
        Err.Clear
    Else
        On Error GoTo 0
        If objWord.Documents.Count = 0 Then
            objWord.Quit
        Else
            MsgBox "Bitte Datei zuerst speichern!", vbInformation, "Hinweis"
            objWord.Activate
            objWord.Dialogs(xlDialogSaveAs).Show "C:\"
        End If
    End If
End Sub
  1. Schließe den VBA-Editor und führe das Makro aus. Dies wird Word beenden, wenn kein Dokument geöffnet ist, oder es wird eine Meldung angezeigt, um das Dokument zu speichern.

Häufige Fehler und Lösungen

  • Fehler: Die MSGBox erscheint immer, auch wenn Word nicht geöffnet ist.

    • Lösung: Stelle sicher, dass die richtige Word-Library aktiviert ist. Überprüfe die GetObject-Befehle, um sicherzustellen, dass sie korrekt sind.
  • Fehler: Word schließt sich nicht nach dem Speichern.

    • Lösung: Nach dem Show-Befehl für den Speichern-Dialog kannst du objWord.Quit hinzufügen, um Word zu schließen, sofern das Dokument gespeichert wurde.

Alternative Methoden

Falls das obige Makro nicht deinen Anforderungen entspricht oder nicht funktioniert, kannst du auch folgenden Ansatz ausprobieren:

Sub WordBeenden()
    Dim objWord As Object
    On Error Resume Next
    Set objWord = GetObject(, "Word.Application")
    If Not objWord Is Nothing Then
        If objWord.Documents.Count > 0 Then
            MsgBox "Bitte die Word-Datei zuerst speichern.", vbInformation
            objWord.Activate
            Application.SendKeys "%(fs)" ' Alt + F + S
        Else
            objWord.Quit
        End If
    End If
    On Error GoTo 0
End Sub

Diese Methode nutzt die SendKeys-Funktion, um den Speichern-Dialog zu öffnen.


Praktische Beispiele

Hier sind einige praktische Anwendungen des Makros:

  1. Aufgabenliste in Word erstellen: Verwende das Makro, um sicherzustellen, dass alle Änderungen an einer Aufgabenliste in Word gespeichert werden, bevor du das Programm schließt.
  2. Dokumente ohne Speichern schließen: Wenn du häufig mit Word-Dokumenten arbeitest, die nicht gespeichert werden müssen, kann dieses Makro helfen, Word automatisch zu schließen.

Tipps für Profis

  • Nutze die On Error-Anweisung, um Fehler beim Zugriff auf die Word-Anwendung besser zu handhaben.
  • Experimentiere mit weiteren Dialogen, wie objWord.Dialogs(xlDialogOpen), um Dokumente aus Excel zu öffnen.
  • Achte darauf, dass du stets die aktuellste Version der Word-Library verwendest, um Kompatibilitätsprobleme zu vermeiden.

FAQ: Häufige Fragen

1. Kann ich Word aus Excel beenden, ohne das Dokument zu speichern? Ja, du kannst Word schließen, wenn kein Dokument geöffnet ist, oder das Dokument schließen ohne speichern, indem du objWord.Quit verwendest.

2. Was tun, wenn der Speichern-Dialog nicht erscheint? Überprüfe, ob die Word-Library korrekt referenziert ist. Manchmal kann es auch helfen, den SendKeys-Befehl zu verwenden, um den Speichern-Dialog manuell zu öffnen.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige