2016-10-14 3 views
0

zu Mittag gegessen Wie
1. Führen Sie Makro aus Strom (FIRST.XLSM) Arbeitsmappe eine andere Arbeitsmappe (SECOND.XLSM)
2. Führen Sie Makro zu öffnen, auf (SECOND.XLSM) Arbeitsmappe, die (FIRST.XLSM) schließt und dann setzt seine Prozedur ich versucht, dieses:ein Makro auf einer anderen Arbeitsmappe ausführen und dann schließen Sie die Arbeitsmappe, die das Makro

Sub FirstMacro() 
Workbooks.Open Range("f90")  'second workbook full path 

Workbooks("first.XLSM").Close SaveChanges:=True 'save first workbook and close 
Second_Workbook_Macro ' run second workbook macro 
End Sub 

Aber da es speichert und schließt die erste Arbeitsmappe die vba weiterhin nicht sein Verfahren ..

irgendwelche Vorschläge ... und danke im Voraus

Antwort

1
Sub FirstMacro() 

    Dim wb As Workbook 
    Set wb = Workbooks.Open Range("f90") 'second workbook full path 

    Application.Run "'" & wb.Name & "'!Second_Workbook_Macro" 

    ThisWorkbook.Close SaveChanges:=True 'save first workbook and close 

End Sub 
+0

DANK TIM für Ihre Antwort ... THIS VBA Sie vorschlugen SCHLIESSEN DIE ERSTE ARBEITSBUCH NACH DER VBA IN ZWEITEN ARBEITSMAPPE ITS OWN MACRO SCHLIESST ... I NEED IN ZWEITER ARBEITSMAPPE seine Aufgabe ERSTEN ARBEITSBUCH VOR VBA SCHLIESSEN ALS DAS ERSTE ARBEITSBUCH LASSEN SIE DIE ZWEITEN WORKBOOK-BERECHNUNGEN WÄHREND DES VBA-LAUFENS AB –

+0

Anstatt Application.Run zu verwenden, verwenden Sie 'Application.OnTime', um das andere Makro mit einer kurzen Verzögerung zu planen, sodass Sie die erste Arbeitsmappe schließen können. –

+0

hat perfekt funktioniert ... danke Tim für deine kurze und effektive Lösung –

Verwandte Themen