per VBA in Word auf Excel Container Zugriff erhalten

Der folgende VBA Tipp zeigt, wie man in einem MS Word Dokument Zugriff auf ein eingebundenes Excel Objekt / Container bekommt.
Dabei wird auf verschiedene Arbeitsblätter zugegriffen.

Der Tipp geht davon aus, dass das Excel Objekt das erste eingebundene Objekt in der Worddatei ist.
Im VBA Editor muss über Extras => Verweise ein Verweis auf Excel gesetzt werden.

In dem Beispiel wir in der ersten Arbeitsmappe im Feld A1 das aktuelle Datum und die aktuelle Uhrzeit geschrieben.
Als zweites wird eine Kopie der Arbeitsmappe 1 nach der Arbeitsmappe 1 eingefügt.

   1:  Sub Zugriff_auf_Excel_Object()
   2:   Dim oWordOLEFormat As Word.OLEFormat
   3:   Dim oExcelWorkbook As Excel.workbook
   4:   
   5:   Set oWordOLEFormat = ActiveDocument.InlineShapes(1).OLEFormat
   6:   
   7:   oWordOLEFormat.DoVerb wdOLEVerbOpen
   8:   
   9:   Set oExcelWorkbook = oWordOLEFormat.Object
  10:   oExcelWorkbook.Application.Visible = False
  11:   
  12:   'Beispielaktion 1: Datum in erstes Arbeitsblatt schreiben 
  13:   With oExcelWorkbook.Sheets(1)
  14:       .Range("A1") = Now
  15:   End With
  16:   
  17:   'Beispielaktion 2: Arbeitsblatt kopieren und nach dem ersten Arbeitsblatt einfügen 
  18:     oExcelWorkbook.Sheets(1).Copy After:=oExcelWorkbook.Sheets(1)
  19:     oExcelWorkbook.Close
  20:   
  21:   Set oExcelWorkbook = Nothing
  22:   Set oWordOLEFormat = Nothing
  23:  End Sub

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.