Office: (Office 2010) Word-Instanzen sauber beenden

Helfe beim Thema Word-Instanzen sauber beenden in Microsoft Access Hilfe um das Problem gemeinsam zu lösen; Aus access 210 erzeuge ich seinen serienbrief mit eine Excel-Datenquelle Code: Option Explicit Private Const strDatenQuelle As String =... Dieses Thema im Forum "Microsoft Access Hilfe" wurde erstellt von ble, 19. August 2019.

  1. Word-Instanzen sauber beenden


    Aus access 210 erzeuge ich seinen serienbrief mit eine Excel-Datenquelle
    Code:
    Der Code käuft soweit ganz gut.
    Was ich auch mache, im Taskmanager bleibt eine Wordinstanz hängen.
    Wie kann ich Word sauber beenden?

    :)
     
  2. zeilen wie
    ActiveDocument.MailMerge.DataSource.ActiveRecord = wdLastRecord
    ActiveDocument.MailMerge.DataSource.ActiveRecord = wdFirstRecord
    halte die Wordinstanz im Speicher
     
  3. Versuche es mal mit WinDoc.Close 0 und WinWord.Quit 0
    Sonst hängt er ggf. in der MsgBox mit der Frage, ob gespeichert werden soll.
     
    CatboyJones, 21. August 2019
    #3
  4. Word-Instanzen sauber beenden

    Naive Frage:
    Ich weiß jetzt wie sie reinkamen.
    Wie kommen die wieder raus?
     
  5. Danke alle Helfer.
    Der Code von CatboyJones löste das Problem.
     
  6. Hallo,
    Ich denke nicht. Beim 2. Aufruf der Prozedur dürfte diese crashen wegen der von Daolix bereits angegeben Zeilen.

    Wordobjekte (z.B. ActiveDocument) müssen in Access entsprechend verwiesen werden.
    "WinDoc" dürfte deinem "ActiveDocument" entsprechen.
     
    Steffen0815, 21. August 2019
    #6
  7. Ich habe einfach ActiveDocument durch winDoc ersetzt.

    Bei
    WinDoc.SaveAs FileName:=Dateiname 'Speichern unter Dateiname
    'WinDoc.Close False

    wird der der Client getrennt, was ein so lautende Fehlermeldung verursacht.
    Kommentiere ich das .close aus,
    kommt bei
    Code:
    ein Laufzeitfehler 438: Objeckt unterstützt diese Methode oder Eigenschaft nicht.
     
  8. Word-Instanzen sauber beenden

    Zuerst solltest Du damit beginnen, diese Mischung aus Late Binding und Early Bindung aufzuräumen und eine Methode davon sauber und durchgängig zu verwenden. Unsaubere Codes sind ein stetiger Quell von "überraschenden" Ereignissen.
     
  9. Hallo ble,

    wenn Word als Object gestartet wird, räumt ein .Quit die Instanz oft nicht aus dem Speicher. Das Problem kann man aber leicht umgehen, indem man Word in einer Klasse kapselt. Wenn die Klasse terminiert, zieht sie die Wordinstanz zuverlässig mit in den Abgrund wie in diesem Beispielcode gezeigt.
     
    haklesoft, 21. August 2019
    #9
  10. kann es sein, dass die Klasse Serienbriefe nicht unerstützt? Denn bei

    Code:
    kommt der Laufzeitfehler 438 Objekt unterstützt diese Methode oder Eigenschaft nicht.
     
  11. Noe. Da wird wohl WinDoc nicht zugewiesen sein.
     
    Zuletzt von einem Moderator bearbeitet: 7. Januar 2021
    haklesoft, 21. August 2019
    #11
  12. Ich bin da auch regelmäßig dazu geneigt zu sagen: Rede doch in vollständigen Sätzen (Zusammenhängen).
    Bei einem solchen hingeworfenen Brocken kann man nie beurteilen, was da im Umfeld alles passiert, insbesondere wenn zu einen verbesserungswürdigen Code einige Vorschläge gekommen sind und man nicht im Ansatz nachvollziehen kann, ob und wie da einiges umgesetzt wurde => Black Box.
     
  13. Word-Instanzen sauber beenden

    Code:
    Bei dem Kursiv geschriebenen "WinDoc.MailMerge" meckert der Debugger.

    Abgesehen davon, kann man das ActiveDocument nicht irgendwie zurücksetzen? Wenn ich das Formular schließe und wieder öffne läuft der Ausgangscode ohne Probleme.

    ebs 17 hat sicher Recht, wenn er meine Postings bemängelt, aber im Eifer des Gefechts...
     
  14. Code:
    GetWord nach haklesoft übergibt eine Wordinstanz, nichts weiter.
    Code:
    Hier tust Du aber so, als wäre WinDoc plötzlich ein Dokument.

    Du solltest Dir also Klarheit darüber verschaffen, was eine Wordinstanz (das Word an sich) und was ein Dokument ist und wie man die beiden unterschiedlichen Objekte auch per Namensgebung von Objektvariablen unterscheidet sowie dann auch verwendet => gezielte Referenzierung statt Schießen in den Nebel. Mit der Objektvariablen für das Dokument hättest du auch den logischen Ersatz für ActiveDocument.
    Da würde ich doch auf das Formular gleich verzichten ...

    Im Ernst: Wenn in Zusammenarbeit mit Word oder Excel ein Code abwechselnd läuft und dann auch nicht, hat man es regelmäßig mit unsauberer Referenzierung zu tun. Klar: Wenn man würfelt, kriegt man nicht immer die Sechs.
     
  15. In Ergänzung zu Eberhard:
    Du könntest drei passend benannte Objekte anlegen.
    Eins für die Klasse, eins für die mit GetWord geholte Word.Application und eines für das mit Documents.Add (Vorlage.dotx) erstellte Arbeitsdokument. Das kann dann auch Mailmerge.
    Und wenn Du den Verweis auf Deine WordOLB herausnimmst um komplett auf late bound umzustellen, müssen auch alle wd-Konstanten nachgebildet werden.
     
    haklesoft, 22. August 2019
    #15
Thema:

Word-Instanzen sauber beenden

Die Seite wird geladen...
  1. Word-Instanzen sauber beenden - Similar Threads - Word Instanzen sauber

  2. Word serianbrief

    in Microsoft Word Hilfe
    Word serianbrief: Beim Serienbrief kann ich ein Datumformat eingeben wie ich will, er druckt immer das uS-Format <monat/tag/Jahr.
  3. Word abgestürzt, Dokument auf Stand von vor 2 Monaten

    in Microsoft Word Hilfe
    Word abgestürzt, Dokument auf Stand von vor 2 Monaten: Liebe Community, ich schreibe in voller Verzweiflung. Ich habe bei Word (Studentenaccount) eine sehr sehr wichtige Datei bearbeitet. Plötzlich schloss sich das Programm und eine Fehlermeldung...
  4. Word spielt Hüpfburg!

    in Microsoft Word Hilfe
    Word spielt Hüpfburg!: Moin allerseits! meine Version 2021 / fehlt in der Präfix-Auswahl egal, ob ich meine Seiten-Ansicht auf dem üblichen Weg über die Menüs oder folgenden VBA (Modul in Normat.Dot, aufgerufen per...
  5. Buchsatz mit Word: untere Zeile der Seiten immer auf der gleichen Höhe

    in Microsoft Word Hilfe
    Buchsatz mit Word: untere Zeile der Seiten immer auf der gleichen Höhe: Ich versuche gerade, mein Buch mit MS Office Professional PLUS möglichst professionell zu setzen. Das Vermeiden von einsamen Einzelzeilen am Beginn oder am Ende von Seiten verhindert Word...
  6. Handling mehrerer Word-Instanzen

    in Microsoft Word Hilfe
    Handling mehrerer Word-Instanzen: Hallo zusammen, ich habe ein Problem, bei dem ich einfach nicht weiterkomme. Zusammenfassung: Es gibt eine Dokumentenvorlage, auf Basis derer CV's der Mitarbeiter erstellt werden können. Erstelle...
  7. Alle offenen Word instanzen schließen

    in Microsoft Excel Hilfe
    Alle offenen Word instanzen schließen: Hallo zusammen, steh mal wieder auf dem Schlauch und brauch eurer Unterstützung Also Ich erzeuge aus Excel heraus Briefe (Word), druck diese und speichere diese als PDF das klappt soweit Ich...
  8. WORD: zwei Instanzen (Prozesse) parallel laufen lassen

    in Microsoft Word Hilfe
    WORD: zwei Instanzen (Prozesse) parallel laufen lassen: Hallo liebe Office-Freunde! Freilich kann man zwei oder mehr Word-Dokumente parallel geöffnet haben und die alle auch bearbeiten. Allerdings, wenn in einem ein Eingabefenster (etwa...
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden