Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1104to1108
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

2 Dateien, 2 Subs, gleicher Shortcut

2 Dateien, 2 Subs, gleicher Shortcut
Wilhelm
Hallo, ich habe folgende Frage:
Ich habe zwei Excel-VBA-Programme „Test1.xls“ und „Test2.xls“auf meinem PC geöffnet. Beide Programme enthalten unteschiedliche Subs, welche aber beide mit dem Shortcut „Strg + u“ gestartet werden.
Wenn jetzt „Test1.xls“ aktiv ist und ich den Shortcut „Strg+u“ betätige, so wird das zugehörige Sub aus Test1 ausgeführt, wie zu erwarten.
Wenn jedoch „Test2.xls“ aktiv ist und ich den Shortcut „Strg+u“ betätige, so wird nicht etwa das zugehörige Sub aus „Test2.xls“ ausgeführt, sondern wieder das Sub aus „Test1.xls“.
Kann mir jemand dazu eine Erklärung liefern?
Was muss ich tun, damit der Shortcut das richtige Sub aus der aktiven Datei startet und nicht das aus der inaktiven Datei?
Herzlichen Dank im Voraus für Eure Hilfe!
Wilhelm

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: 2 Dateien, 2 Subs, gleicher Shortcut
24.09.2009 13:20:34
Kawensmann
Hallo,
so weit ich weiß, wird dann die Sub aus dem Workbook, welches als erstes geöffnet wurde, ausgeführt.
Gruß
Kawensmann
AW: 2 Dateien, 2 Subs, gleicher Shortcut
24.09.2009 14:18:25
Wilhelm
Hallo Kawensmann,
danke für Deine schnelle Antwort, aber das kann's nicht sein. Ich habe alles ausprobiert. Die Reihenfolge des Öffnens ebenso die Reihenfolge der ersten Aktivierung scheint ganz gleichgültig zu sein. Sobald beide Dateien "Test1.xls" und "Test2.xls" nebeneinander geöffnet sind, wird bei Betätigen des Shortcuts immer nur das Sub aus "Test1.xls" ausgeführt. Ich bin ziemlich ratlos!
Herzliche Grüße
Wilhelm
AW: 2 Dateien, 2 Subs, gleicher Shortcut
24.09.2009 18:09:47
Wilhelm
Hallo Kawensmann, danke für Ihre Mühe mit meinem Problem!
Habe die Erläuterung gelesen und konnte jetzt testen, dass es tatsächlich die Reihenfolge ist, in der die Dateien geöffnet werden. Bei meinen Tests von früher hatte ich zwar die Dateien in unterschiedlicher Reihenfolge geöffnet und geschlossen, dabei aber die Applikation Excel selbst nicht beendet. Excel merkt sich offenbar die Reihenfolge des ersten Öffnens und behält diese, auch wenn die Dateien zwischendurch wieder geschlossen werden. Wenn ich aber auch die Applikation Excel wieder schließe und dann die Dateien unterschiedlich öffne, wird immer das Sub aus der zuerst geöffneten Datei ausgeführt.
Allerdings gelingt es mir nicht, den Tip aus den Erläuterungen
(Have each macro check the name of the active workbook. If the name matches the expected name for that macro, then the code can continue to execute. If it does not match, then the code can activate the other workbook and directly run the macro in that one.)
umzusetzen:
Ich habe die Dateien "Test1.xls" und "Test2.xls". Beide enthalten das Sub "Test1" bzw Test2, welches mit dem gemeinsamen Shortcut gestartet werden soll. Ich habe folgenden Code geschrieben:
In "Test1.xls":
Public Sub Test1()
Dim X As Variant, W As Variant
W = ActiveWorkbook.Name
If W = "Test2.xls" Then Call Test2: Exit Sub
X = MsgBox("Test1", vbOKOnly)
End Sub
In "Test2.xls":
Public Sub Test2()
Dim X As Variant, W As Variant
W = ActiveWorkbook.Name
If W = "Test1.xls" Then Call Test1: Exit Sub
X = MsgBox("Test2", vbOKOnly)
End Sub
Leider funktioniert das so nicht.
Wenn "Test1.xls" als erstes geöffnet wurde und ich den Shortcut betätige, so springt das Programm in das Sub Test1(), führt dieses aber nicht aus sondern markiert "Call Test2" und zeigt die Fehlermeldung "Sub oder Function nicht definiert". Klar, in "Test1.xls" gibt es diese Sub nicht.
Wenn ich beiden Subs den gleichen Namen gebe, so ist alles ok, wenn ich den Shortcut bei aktivem "Test1.xls" betätige, es wird die MessageBox "Test1" angezeigt. Wenn ich aber den Shortcut bei aktivem "Test2.xls" betätige, stoppt das Programm bei dem Befehl "Call Test" und zeigt die Meldung "Laufzeitfehler 28: Nicht genügend Stapelspeicher". Offenbar will das Sub sich selbst aufrufen.
Wie also kann ich aus Sub Test1 das Sub Test2 in der zweiten Datei aufrufen?
Können Sie meinen Code entsprechend korregieren?
Herzliche Grüße
Wilhelm
Anzeige
AW: 2 Dateien, 2 Subs, gleicher Shortcut
24.09.2009 13:20:37
Kawensmann
Hallo,
so weit ich weiß, wird dann die Sub aus dem Workbook, welches als erstes geöffnet wurde, ausgeführt.
Gruß
Kawensmann

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige