So nutzen Sie die Rechen-Power von Excel in Ihren Word-Makros

04. Juli 2012

In diesem Beitrag geht es um eine pfiffige Technik für den Einsatz in VBA-Makros. Damit Sie die Informationen nutzen können, sollten Sie bereits eigene VBA-Prozeduren entwickelt haben, da wir Grundkenntnisse in diesem Bereich voraussetzen.

Unter dem Begriff »Office Automation« versteht man die Steuerung von Office-Anwendungen per VBA. In diesem Rahmen ist es mit wenig Aufwand möglich, Funktionen anderer Anwendungen zu nutzen und auf deren Dokumente zuzugreifen. Sie können also beispielsweise aus Word heraus Daten aus Access abfragen, eine Präsentation in PowerPoint anlegen oder eben Rechenfunktionen von Excel nutzen.

Eine wichtige Grundlage von Office Automation ist das Objektmodell, das jede Office-Anwendung zur Verfügung stellt. In diesem Objektmodell ist genau definiert, auf welche Objekte einer Anwendung Sie zugreifen, welche Eigenschaften Sie auslesen bzw. ändern und welche Methoden/Funktionen Sie aufrufen können. Darüber hinaus definiert das Objektmodell mit Arrays vergleichbare Auflistungen, die z. B. in einem Word-Dokument alle Absätze oder Tabellen, in einer Excel-Arbeitsmappe alle Tabellenblätter oder Diagramme und in Outlook verfügbare Adressbücher oder Nachrichten eines Ordners zusammenfassen.

Um wie gewünscht Rechenfunktionen von Excel in Word nutzen, setzen Sie im ersten Schritt einen entsprechenden Verweis:

  1. Wechseln Sie mit Alt + F11 in die VBA-Entwicklungsumgebung von Word.
  2. Wählen Sie das Menü EXTRAS-VERWEISE an.
  3. Suchen Sie in der Liste VERFÜGBARE REFERENZEN nach dem Eintrag »Microsoft Excel x.x Object Library«. Dabei steht »x.x« für die Excel- Version, also »14.0« für Excel 2010, »12.0« für Excel 2007, »11.0« für Excel 2003 oder »10.0« für Excel 2002/XP.
  4. Aktivieren Sie die Kontrollkästchen vor dem gewünschten Eintrag und bestätigen Sie mit OK.

Englische Funktionsnamen in VBA verwenden

Damit sind grundsätzlich alle Vorbereitungen getroffen, um eine Excel-Funktion aus einem Word-Makro heraus zu nutzen. Aber eine kleine Hürde gilt es noch zu überwinden: Sie müssen natürlich wissen, welche Excel-Funktion Sie verwenden möchten. Dazu genügt es leider nicht, die Formel aus der Excel-Tabelle zu kennen, denn hier wurden alle Funktionen ins Deutsche übersetzt. VBA ist aber nun einmal eine englische Programmiersprache und dementsprechend müssen Sie hier auch die englischen Namen der Excel-Funktionen verwenden.

Die Lösung des Problems ist die wenig bekannte Tabelle VBA-LISTE.XLS, die mit Excel installiert wird und in der deutsche und englische Funktionsnamen einander gegenübergestellt sind. Sie finden diese Datei je nach Excel-Version im folgenden Verzeichnis:

Excel 2010:

\< Installationsverzeichnis >\Office14\1031\VBALISTE.XLS

Excel 2007:

\< Installationsverzeichnis >\Office12\1031\VBALISTE.XLS

Excel 2003 und 2002/XP:

\< Installationsverzeichnis >\Office\1031\VBALISTE.XLS

Öffnen Sie die Datei, wechseln Sie auf das Blatt »Tabellenfunktionen« und suchen Sie dann in der Spalte »DEUTSCH« nach der Excel-Funktion, die Sie nutzen möchten. In derselben Zeile direkt daneben finden Sie dann den benötigten englischen Funktionsnamen.

Tipps & Tricks beim Zugriff auf Excel-Funktionen

Excel und Word sollten zueinanderpassen

Beachten Sie, dass Office Automation nur dann absolut zuverlässig funktioniert, wenn es sich um Anwendungen aus derselben Office-Version handelt. Es ist zwar theoretisch möglich, beispielsweise mit Word 2010 auf Excel 2003 zuzugreifen, aber das kann abhängig von den genutzten Funktionen zu Problemen führen. Sofern sie sich nicht vermeiden lassen, müssen Sie derartige Makros besonders ausgiebig testen.

Unterschiedliche Excel-Versionen unterstützen

Wenn Sie ein Makro entwickeln, das in mehreren Word-Versionen eingesetzt werden soll, entwickeln Sie es am besten in der ältesten zu unterstützenden Version. Setzen Sie also z. B. in Word 2002/XP einen Verweis auf die »Microsoft Excel 10.0 Object Library«. Wird dieses Makro nach Abschluss der Entwicklung in Word 2003, 2007 oder 2010 geöffnet, passt Word die Verweise automatisch an die entsprechende Excel-Version an.

Werden Sie mit unseren Tipps zum Word-Profi!

Jetzt gratis per E-Mail

DDV Ehrencodex E-Mail-Marketing
  • Wir benötigen Ihre E-Mail-Adresse für die Zusendung des Newsletters.
  • Wir geben Ihre E-Mail-Adresse garantiert nicht an Dritte weiter.
  • Jederzeit abbestellbar durch einen Link im Newsletter.

Unsere Datenschutzgarantie:

Wir benötigen Ihre E-Mail-Adresse für die Zusendung des Newsletters. Wir geben Ihre E-Mail-Adresse garantiert nicht an Dritte weiter. Jederzeit abbestellbar durch einen Link im Newsletter.

Weitere Artikel zum Thema

Newsletter

Jetzt kostenlose Office-Hilfe anfordern!

  • die besten Tipps
  • völlig kostenlos
  • jederzeit abbestellbar
DDV Ehrencodex E-Mail-Marketing
  • Wir benötigen Ihre E-Mail-Adresse für die Zusendung des Newsletters.
  • Wir geben Ihre E-Mail-Adresse garantiert nicht an Dritte weiter.
  • Jederzeit abbestellbar durch einen Link im Newsletter.

Unsere Datenschutzgarantie:

Wir benötigen Ihre E-Mail-Adresse für die Zusendung des Newsletters. Wir geben Ihre E-Mail-Adresse garantiert nicht an Dritte weiter. Jederzeit abbestellbar durch einen Link im Newsletter.

Unsere Experten

Rudolf Ring twittert für @Computerwissen

Die von Ihnen eingegebene E-Mail Adresse ist nicht korrekt. Bitte korrgieren Sie Ihre Eingabe und klicken Sie auf "OK":

Bitte wählen Sie mindestens einen Newsletter aus und klicken Sie auf "OK"