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

geöffnetes Word Dokument aktivieren

geöffnetes Word Dokument aktivieren
01.07.2020 14:18:12
Patric
Hallo zusammen
Ich brauche wieder einmal eure Hilfe, bei der ich schon lange nicht mehr weiterkomme.
Ein geöffnetes Word Dokument möchte ich aktivieren, damit ich es (von Excel aus) mit Daten befüllen kann.
Öffne ich das Dokument per Excel neu, kann ich dieses ohne Probleme befüllen.
Dies mache ich mit folgendem VBA Code:
Sub Word_Ereignis_öffnen_und_befüllen()
Dim WordApp As Object
Dim WordDoc As Object
Dim strEreignis As String
Dim WordPfad As String
Dim letzteZeile As Integer
Dim Dateiname As String
letzteZeile = Sheets("Journal").Cells(6003, 13).End(xlUp).Row
WordPfad = Sheets("Journal").Range("Q2")
Dateiname = Sheets("Journal").Cells(letzteZeile, 12)
strEreignis = WordPfad & Dateiname
Set WordApp = CreateObject("Word.Application") 'Word als Object starten
WordApp.Visible = True
With WordApp
Set WordDoc = .documents.Open(strEreignis)
.Visible = True
.Activate
End With
Dim EreignisTabelle
Set EreignisTabelle = WordDoc.Bookmarks("EreignisTabelle").Range.Tables(1)
If WordDoc.Bookmarks.exists("EreignisTabelle") = True Then
Cells(letzteZeile, 4).Copy
EreignisTabelle.Cell(2, 2).Range.PasteExcelTable False, False, True
Cells(letzteZeile, 5).Copy
EreignisTabelle.Cell(3, 2).Range.PasteExcelTable False, False, True
Cells(letzteZeile, 6).Copy
EreignisTabelle.Cell(4, 2).Range.PasteExcelTable False, False, True
Cells(letzteZeile, 7).Copy
EreignisTabelle.Cell(5, 2).Range.PasteExcelTable False, False, True
Cells(letzteZeile, 8).Copy
EreignisTabelle.Cell(5, 3).Range.PasteExcelTable False, False, True
Cells(letzteZeile, 9).Copy
EreignisTabelle.Cell(5, 4).Range.PasteExcelTable False, False, True
Cells(letzteZeile, 10).Copy
EreignisTabelle.Cell(6, 2).Range.PasteExcelTable False, False, True
Cells(letzteZeile, 11).Copy
EreignisTabelle.Cell(7, 2).Range.PasteExcelTable False, False, True
End If
WordDoc.Fields.Update
WordDoc.PrintPreview
WordDoc.ClosePrintPreview
WordDoc.Activate
WordDoc.Save
End Sub
Wie muss ich die VBA Programmierung nun anpassen, damit ich ein geöffnetes Word Dokument für das befüllen aktivieren kann.
Vielen Dank für eure Hilfe
Freundliche Grüsse
Patric

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

Betreff
Datum
Anwender
Anzeige
AW: geöffnetes Word Dokument aktivieren
01.07.2020 15:46:54
volti
Hallo Patric,
schau mal, ob Du mit dem u.a. Codebeispiel weiterkommst....

 
Sub Test()
 Dim WordApp As Object, WordDoc As Object, strEreignis As String
 
 On Error Resume Next
 strEreignis = "C:\Users\voltm\Documents\Worddokumente\VPV_Meldung.docx"
  
'Testen, ob Word und das Dokument bereits geöffnet ist
 Set WordApp = GetObject(, "Word.Application")     'Word schon offen?
 If Err.Number = 429 Then
    Err.Clear
    Set WordApp = CreateObject("Word.Application") 'Word öffnen
 End If
 With WordApp
    Set WordDoc = .Documents.Open(strEreignis)    'Datei ansprechen
    If WordDoc Is Nothing Then                    'Datei nicht gefunden
        Set WordDoc = .Documents.Open(strEreignis)
    End If
    .Visible = True
    .Activate
 End With
 
End Sub
 

viele Grüße aus Freigericht
Karl-Heinz

Anzeige
AW: geöffnetes Word Dokument aktivieren
01.07.2020 16:00:56
Patric
Hallo Karl-Heinz
Besten Dank für die Rückmeldung.
Ich habe die Excelliste momentan nicht zur Hand, werde mich aber sicher Morgen wieder melden, ob es funktioniert hat.
Einen schönen Tag
Gruss Patric
AW: geöffnetes Word Dokument aktivieren
01.07.2020 16:38:03
volti
Na dann viel Erfolg morgen.
Hier noch eine winzige Verbesserung: 😊

 
Sub Test()
 Dim WordApp As Object, WordDoc As Object, strEreignis As String
 
 On Error Resume Next
 strEreignis = "C:\Users\voltm\Documents\Worddokumente\VPV_Meldung.docx"
  
'Testen, ob Word und das Dokument bereits geöffnet ist
 Set WordApp = GetObject(, "Word.Application")     'Word schon offen?
 If Err.Number = 429 Then
    Err.Clear
    Set WordApp = CreateObject("Word.Application") 'Word öffnen
 End If
 With WordApp
    Set WordDoc = .Documents(strEreignis)         'Datei ansprechen
    If WordDoc Is Nothing Then                    'Datei nicht gefunden
        Set WordDoc = .Documents.Open(strEreignis)
    End If
    .Visible = True
    .Activate
 End With
 
End Sub
 

viele Grüße aus Freigericht
Karl-Heinz

Anzeige
AW: geöffnetes Word Dokument aktivieren
02.07.2020 10:35:43
Patric
Guten Morgen Karl-Heinz
Nochmals vielen Dank für Deine Hilfe.
Mit Deinem Codebeispiel hat es wunderbar funktioniert.
Ich wünsche Dir einen schönen Tag.
Gruss Patric

87 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige