Zum Inhalt springen

VBA: Aufrufen und bearbeiten von Exceltabellen aus Word


Netzer82

Empfohlene Beiträge

Hi,

ich möchte aus einem Word Makro eine Exceltabelle aufrufen, darin einen Wert generieren und diesen dann an Word, bzw. in eine Variable übergeben. Später dann sollen mehrere Variablen von Word an Excel übergeben werden und in die Tabelle geschrieben werden.

Welchen Befehl muß ich benutzen um die Exceltabelle (ein einzelnes Arbeitsblatt) aufzurufen ?

Link zu diesem Kommentar
Auf anderen Seiten teilen

Ich hoffe das Beispiel ist aufschlussreich genug!!

Der Code stammt aus einem Word-Makro, öffnet die Datei c:\Book1.xls, setzt im Sheet2 die Zelle A1 auf den Wert 12 und macht Excel wieder zu (falls es nicht vorher auf war).

Sub ExcelWorkbookRemoting()

' Objektdeklarationen

Dim ExcelSheet As Object

Dim ExcelCell As Object

Dim bExcelRuns As Boolean

' nehmen wir einfach mal an, excel lief schon

bExcelRuns = True

' im Fehlerfall machen wir einfach weiter

On Error Resume Next

' holen wir uns excel

Set ExcelSheet = GetObject(, "Excel.Application")

' war's wirklich schon da?

If Err.Number <> 0 Then

' Nein -> dann machen wir's auch wieder zu!

bExcelRuns = False

' Fehler löschen

Err.Clear

End If

' jetzt holen wir uns das workbook

Set ExcelSheet = GetObject("C:\Book1.xls")

' gibt's das?

If Err.Number <> 0 Then

' Nein!!, Na so was!

Err.Clear

' Das sagen wir dem user!!

MsgBox "Document does not exist!"

' Und beenden uns

Exit Sub

End If

' Das ist wichtig, sonst ist das workbook beim nächsten öffnen

' versteckt (kann über [window->unhide] wieder sichtbar gemacht werden

' [Fenster->???] auf Deutsch

ExcelSheet.Parent.Windows("Book1.xls").Visible = True

' Holen wir uns ne Zelle

Set ExcelCell = ExcelSheet.Worksheets("Sheet2").Range("A1")

' Ändern deren Wert

ExcelCell.Value = 12

' Speichern alles ab1

ExcelSheet.Save

' wenn Excel schon lief, dann lassen wir's auf, sonst machen wir's zu

If Not bExcelRuns Then ExcelSheet.Application.Quit

' variable freigeben!

Set ExcelSheet = Nothing

Set ExcelCell = Nothing

End Sub

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...