Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Makro im Makro aufrufen

Makro im Makro aufrufen
26.08.2004 16:05:28
Ktie
Hallo!
Kann mir jemand den Code sagen, den ich benötige um ein Makro in einem Makro zu starten (Submakro starten)?
tHANKS!
Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: Makro im Makro aufrufen
Andreas

Sub test1()
Call test2()
End Sub


Sub test2()
msgbox "ich bin in test2"
End Sub

AW: Makro im Makro aufrufen
nighty
hi andi :)
ich war zu langsam wie immer :)
gruss nighty
AW: Makro im Makro aufrufen
26.08.2004 16:21:56
Ktie
Schon mal danke!
Aber was mach ich, wenn sich das aufzurufende Makro in einem anderen Excel File befindet?
Anzeige
AW: Makro im Makro aufrufen
WernerB.
Hallo ?!
... dann guckst Du Dir in der VBA-Hilfe "Application.Run" an!
Gruß
WernerB.
P.S.: In diesem Forum bitte mit Real(vor)namen auftreten; siehe dazu bitte auch die Forums-FAQ. Danke!
AW: Makro im Makro aufrufen
nighty
hi Ktie :)
wie gewuenscht :)
gruss nighty

Sub makro01()
DeinMakroname
rem bzw. call DeinMakroname bei uebergabe von parametern
End Sub

Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Makro im Makro aufrufen: So funktioniert's


Schritt-für-Schritt-Anleitung

Um ein Makro in einem anderen Makro zu starten, kannst du die Call-Anweisung verwenden. Hier ist eine einfache Anleitung:

  1. Öffne den VBA-Editor in Excel (drücke ALT + F11).

  2. Füge ein neues Modul hinzu, indem du mit der rechten Maustaste auf "VBAProject" klickst und "Einfügen" > "Modul" wählst.

  3. Schreibe dein erstes Makro, das ein zweites Makro aufruft. Hier ist ein Beispiel:

    Sub test1()
        Call test2()
    End Sub
    
    Sub test2()
        MsgBox "Ich bin in test2"
    End Sub
  4. Führe das Makro test1 aus, um zu sehen, wie es das Makro test2 aufruft.


Häufige Fehler und Lösungen

  • Fehler: "Sub oder Funktion nicht definiert"

    • Lösung: Stelle sicher, dass der Name des aufgerufenen Makros korrekt ist und dass es im selben Modul oder in einem anderen Modul vorhanden ist.
  • Fehler: "Argument nicht optional"

    • Lösung: Wenn das aufgerufene Makro Parameter erwartet, musst du diese beim Aufruf angeben. Zum Beispiel:
    Sub makro01(parameter As Integer)
        ' Dein Code hier
    End Sub
    
    Sub aufrufMakro()
        Call makro01(5)
    End Sub

Alternative Methoden

Eine andere Möglichkeit, ein Makro in einem anderen Makro auszuführen, ist die Verwendung der Application.Run-Methode. Dies ist nützlich, wenn sich das aufgerufene Makro in einem anderen Excel-Dokument befindet. Hier ist ein Beispiel:

Sub aufrufVonAndererDatei()
    Application.Run "'DeineDatei.xlsm'!DeinMakroname"
End Sub

Praktische Beispiele

Hier sind einige praktische Beispiele, wie du die Call-Anweisung und Application.Run verwenden kannst:

  1. Makro im selben Modul aufrufen:

    Sub HauptMakro()
        Call UnterMakro
    End Sub
    
    Sub UnterMakro()
        MsgBox "Ich bin das Unter-Makro!"
    End Sub
  2. Makro in einer anderen Datei aufrufen:

    Sub MakroInAndererDatei()
        Application.Run "'AndereDatei.xlsm'!MakroVonAndererDatei"
    End Sub

Tipps für Profis

  • Nutze die Option Explicit-Anweisung am Anfang deiner Module, um sicherzustellen, dass du alle Variablen deklarierst. Dies kann helfen, Fehler beim vba makro aufrufen zu vermeiden.
  • Verwende descriptive Namen für deine Makros, damit du und andere Benutzer leicht nachvollziehen können, was jedes Makro macht.
  • Wenn du oft Makros aufrufst, kannst du eine Funktion erstellen, die häufig genutzte Makros zusammenfasst.

FAQ: Häufige Fragen

1. Wie kann ich ein Makro in einem anderen Excel-Dokument aufrufen?
Du kannst die Application.Run-Methode verwenden, um ein Makro in einem anderen Excel-Dokument aufzurufen. Stelle sicher, dass die Datei geöffnet ist.

2. Kann ich ein Makro direkt aus einem anderen Makro aufrufen, ohne Call zu verwenden?
Ja, du kannst das Makro auch einfach durch seinen Namen aufrufen, z.B. test2, ohne Call.

3. Wie übergebe ich Parameter an ein aufgerufenes Makro?
Du kannst Parameter beim Aufruf des Makros angeben, zum Beispiel: Call makro01(5).

Mit diesen Informationen solltest du in der Lage sein, effizient Makros in Excel zu starten und zu steuern.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige