Excel-Datei in Word öffnen

...komplette Frage anzeigen

1 Antwort

Hallo,

Du kannst in VBA mittels Shell Kommandozeile externe Anwendungen starten. Um dann Makros im Excel auszuführen greifst Du entweder auf den SendKeys-Befehl zurück (rate ich aber davon ab) - besser Du packst die Makros in eine Workbook_Open-Routine Deiner Excel-Datei.

Das Ganze kann dann wie folgt aussehen:

Word-Makro:

Sub Makro1()
   Shell "c:\Program Files\Microsoft Office\OFFICE11\EXCEL.EXE c:\Ablage\Mappe1.xls"
End Sub

Excel-Makro:

Private Sub Workbook_Open()
  MsgBox ("Hello World!")
End Sub

Einziger "Wermutstropfen":

  • Du musst beim Start von Excel die Sicherheitsabfrage bestätigen (oder die Sicherheit runter drehen <-- nicht gut / oder Makro signieren <-- gut)
  • das Makro wird auch ausgeführt, wenn Du die Excel-Datei manuell öffnest.

ich hab zwar schon mal ein größeres Word-Makro geschrieben [in Chemietexten Indices erkennen und tief setzen], hatte aber immer Schwierigkeiten mit der Einbettung in die Normal.dot, die geht ja ganz anders als bei xls.

Ganz zu schweigen von der Zuweisung zu einem Leisten-Knopf. War in 2000 schon schwierig, vermutlich jetzt komplizierter. [falls Du Dich auch da auskennst]

Solltest Du vllt auch noch was zu sagen, ich kanns nicht erklären.

0
@Iamiam

Hmm, also in der 2003er-Version scheint das zumindest ganz einfach zu sein. Einfach im Visual Basic-Editor das Makro unter dem Projekt "Normal" platzieren und schon steht es Dir in allen Dokumenten zur Verfügung. Und das Makro legst Du Dir ganz einfach durch "Extras --> Anpassen --> Befehle --> Kategorie: Makros" auf eine beliebige Symbolleiste. Wie es unter 2000 war weiß ich leider nicht mehr. Kann sein, daß man da anders vorgehen musste. Oder habe ich Deine Anmerkung komplett falsch verstanden? Gruß puba

1
@puba07

schon richtig verstanden. Das Problem war, dass es nicht, wie bei xl, in einer beliebigen Datei in einem beliebigen Pfad hinterlegt werden und dort per Knopf aufgerufen werden konnte, sondern in der Normal.dot.

Ich wollte es per Mail einer intensiv-Nutzerin übergeben, die viel Chemie-Texte schreiben musste, und die haufenweise Spezialitäten in der Normal.dot hatte, aber von Makros absolut nichts verstand und da auch blockierte.

In meiner .dot gings nicht, da fehlten ja ihre Spezialitäten, und in ihre hatte sie es nicht reinbekommen, auch nicht den als Kompromiss vorgesehenen benutzerdefinierten Knopf mit der Apothekerwaage, war irgendwie nicht zu finden.

Dieses Problem war ich von xl her nicht gewohnt.

Und in einer Spezialdatei angehängt wars dann eben auch nur in dieser Datei verfügbar und der Knopf auch nicht oder sowas . weiß nicht mehr genau. Oder war der Aufruf zu kompliziert, musste man nämlich absatzweise und deshalb häufiger machen, sonst hats überproportional lang gedauert.

Jedenfalls war die Arbeit, das auf Word umzuschreiben umsonst, liegt nach wie vor ungenutzt auf einem Stick rum und vergammelt.

Wenn Du eine Verwendung für sowas oder für Molmassenberechnungen hast, kann jeder von mir haben!

0

Was möchtest Du wissen?