22.02.2015, 13:47
(Dieser Beitrag wurde zuletzt bearbeitet: 22.02.2015, 13:58 von tobias.billen.)
Guten Morgen,
ich möchte gerne aus der Excelmappe Main.xlsm eine Function aus Sub.xlsm öffnen. Da das nur eine Beispiel ist muss ich folgendes beachten:
1.Beide Makros liegen auf "Tabelle1"(Dieses darf ich ändern).
2.Ich kann davon ausgehen, dass beide Excel Mappen geöffnet sind, wenn ich das Makro in Main.xlsm ausführe.
3.Diese Makros müssen unter Excel 2010 laufen.
Leider hängt sich das Makro immer an Application.Run auf. Daher frage ich mich: Was habe ich falsch gemacht? Und muss es richtig heißen?
Main.xlsm
Sub.xlsm
Dieser Code ist durch eine Google - Recherche zustande gekommen.
edit 1:
=> Es hat sich erledigt. Die Zeile muss Application.Run "'" & wb & "'Tabelle1!test", msg heißen
ich möchte gerne aus der Excelmappe Main.xlsm eine Function aus Sub.xlsm öffnen. Da das nur eine Beispiel ist muss ich folgendes beachten:
1.Beide Makros liegen auf "Tabelle1"(Dieses darf ich ändern).
2.Ich kann davon ausgehen, dass beide Excel Mappen geöffnet sind, wenn ich das Makro in Main.xlsm ausführe.
3.Diese Makros müssen unter Excel 2010 laufen.
Leider hängt sich das Makro immer an Application.Run auf. Daher frage ich mich: Was habe ich falsch gemacht? Und muss es richtig heißen?
Main.xlsm
Code:
Private Sub CommandButton21_Click()
Dim wb As String 'Name des Excelmappe
Dim msg As String 'Testnachricht
'Variablen werden gesetzt
msg = "Es hat geklappt"
wb = "Sub.xlsm"
'Aufruf des Makros
Application.Run "'" & wb & "'!test", msg
End Sub
Sub.xlsm
Code:
Public Sub CommandButton21_Click()
test
End Sub
Public Function test(Optional msg As String = " ")
MsgBox "Test" & msg
End Function
Dieser Code ist durch eine Google - Recherche zustande gekommen.
edit 1:
=> Es hat sich erledigt. Die Zeile muss Application.Run "'" & wb & "'Tabelle1!test", msg heißen