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

MsgBox über externes Makro deaktivieren

MsgBox über externes Makro deaktivieren
06.08.2021 13:42:21
Romano
Aloha Community,
ich greife per Makro1 von Datei1 auf das Makro2 einer Datei2 zu.
Die Aufgabe von Makro1 ist das Öffnen der Datei2, Metadaten aus Datei1 in Datei2 zu übertragen, Makro2 auszuführen, Datei2 zu speichern und neue Metadaten aus Datei1 in Datei2 zu übertragen, Makro2 auszuführen usw...
Die Schleife des Makro1 wird allerdings durch die Meldung "Import complete." des Makro2 unterbrochen.
Ist es möglich mit Makro1 die MsgBox des Makro2 zu deaktivieren?
Bisher fand ich keine passenden Einträge.
Vielen Dank im Voraus für die Hilfe!
VG Romano

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: MsgBox über externes Makro deaktivieren
06.08.2021 14:07:33
Daniel
Hi
das geht meiner Ansicht nach nur, wenn du im Makro2 bzw in der Datei2 die entsprechenden Vorkehrungen triffst.
du könntest bspw im Makro2 abfrgagen, ob die Datei1 geöffnet ist und die Messagebox nur nur dann ausgeben, wenn nich.
also im Makros 2:

dim wb as Workbook
for each wb in Application
if wb.Name = "Datei1.xlsm" then Exit for
Next
if wb is Nothing then Msgbox "Import Complete"
andere möglichkeit:
du schreibst das Makro2 so um:

Sub Makro2(Optional MeldungAusgeben as boolean = True)
If MeldungAusgeben Then MsgBox  "Import Complete"
über den Aufruf mit

Application.Run "Datei2.xlsx!Makro2", False
kannst du dann die Anzeige der Meldung unterdrücken.
Gruß Daniel
Anzeige
AW: MsgBox über externes Makro deaktivieren
06.08.2021 14:45:28
Romano
Hallo Daniel.
Die erste Idee gefällt mir sehr gut.
Man muss eben nur darauf kommen. Hehe
Vielen Dank für deine Hilfe und ein schönes Wochenende!
AW: MsgBox über externes Makro deaktivieren
06.08.2021 15:03:37
Daniel
Hi
wobei bei dieser Variante die Meldung auch dann unterdrückt wird, wenn Datei1 nur zufällig geöffnet ist, und das Makro2 normal gestartet wurde, dh nicht von Makro1 aus.
Wenn das aber normalerweise nicht vorkommt, dann kann man das so machen.
Gruß Daniel
AW: MsgBox über externes Makro deaktivieren
06.08.2021 15:17:22
Romano
Das stimmt - allerdings handelt es sich nur um eine schlichte Abschlussmeldung.
Selbst wenn der Fall einträfe, schlösse der Import ordnungsgemäß ohne Meldung ab.
Eine kleine Änderung musste ich vornehmen:

dim wb as Workbook
for each wb in Application.Workbooks
if wb.Name = "Datei1.xlsm" then GoTo 1
Next
1
Ohne ".Workbooks" hinter dem "Application" war die Ausführung nicht möglich.
VG Romano
Anzeige
AW: MsgBox über externes Makro deaktivieren
06.08.2021 15:26:42
Daniel
noch ne Frage, warum hier die Sprungmarke und nicht das EXIT FOR?
was ist der Vorteil der Sprungmarke?
Gruß Daniel
AW: MsgBox über externes Makro deaktivieren
09.08.2021 08:19:35
Romano
Hallo Daniel,
die Sprungmarke diente zum Übersprigen weiteren Quelltextes, den ich in dieser Darstellung hier nicht aufführte.
Mittlerweile habe ich den Quelltext umgeschrieben und verwende das Exit For.
Ich wünsche eine schöne Woche.
Romano
AW: MsgBox über externes Makro deaktivieren
09.08.2021 08:21:00
Romano
Hallo Daniel,
die Sprungmarke diente zum Übersprigen weiteren Quelltextes, den ich in dieser Darstellung hier nicht aufführte.
Mittlerweile habe ich den Quelltext umgeschrieben und verwende das Exit For.
Wieso fragst du? Können Sprungmarken zu Problemen führen?
Ich wünsche eine schöne Woche.
Romano
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige