nathalem
Goto Top

Makro von Personal.xlsb ausführen

ich habe ein Makro geschrieben das in der Personal.xlsb liegt und von einem weiteren Makro in einer Excel tabelle ausgeführt werden soll

Ich habe über die Makro aufzeichnen Funktion ein einfaches Makro angelegt das in ein paar Spaltenbreiten anpasst einige Felder färbt und 3 Einträge verändert.
Dieses habe ich "formatierung" genannt.
Wenn ich nun die Datei "ActiveDirectoryExport.xlsx" und das Makro manuell öffne und das Makro ausführe funktioniert es auch wunderbar. Nun möchte ich es aber als Teil eines größeren Programms ausführen.
Dazu habe ich diese VBS geschrieben

Code-----------------------------------
Set oExcel = WScript.CreateObject("Excel.Application")
On Error Resume Next
With oExcel
.Visible = FALSE
Application.DisplayAlerts = False
Set oDoc = .Workbooks.Open("c:\ADDGE\ActiveDirectoryExport.xlsx")
.Run "PERSONAL.XLSB!formatierung"
oDoc.Save
oDoc.Close
.Quit
End With
CodeEnde----------------------------------

Wenn ich diese per Doppelklick oder auch über eine Batch ausführe passiert gar nichts. Es erscheint als auch keine Fehlermeldung
Wenn ich .Visible auf TRUE setze sehe ich wie die Datei aufgeht und sich gleich wieder schließt.
Könnt ihr mir weiterhelfen?

Edit: wenn ich den Close und den Quit befehl wegnehme sehe ich das nach öffnen einfach garnichts passiert

Content-Key: 205856

Url: https://administrator.de/contentid/205856

Printed on: April 18, 2024 at 08:04 o'clock

Member: colinardo
colinardo Apr 30, 2013 updated at 10:25:01 (UTC)
Goto Top
Hallo Nathalem,
die Syntax um ein Makro aus einer anderen Arbeitsmappe aufzurufen sieht so aus:
.Run "'C:\PfadzurDatei\PERSONAL.XLSB'!formatierung"
Um den Pfad zur anderen Excel-Datei müssen einzelne Anführungszeichen verwendet werden wenn die Datei noch nicht geöffnet wurde.

Grüße Uwe
Member: Nathalem
Nathalem Apr 30, 2013 at 10:36:37 (UTC)
Goto Top
Hat funktioniert.
Ich habe nur einen Moment gebraucht um zu bemerkten das ich den Pfad zur Personal.xlsb auch eintragen muss.
Vielen Dank
Member: colinardo
colinardo Apr 30, 2013 at 12:42:47 (UTC)
Goto Top
Dann bitte Beitrag als gelöst markieren, Danke !
How can I mark a post as solved?