Haben Sie schon mal darüber nachgedacht, über die Funktion =WENN(Prüfung;dann;sonst) ein eigenes Makro auszuführen, wenn die Wenn-Bedingung eintritt?
Nachfolgend zeigen wir Ihnen, wie sich dies relativ einfach realiseren lässt.
Erfassen Sie in eine beliebige Zelle folgende Formel: =WENN(F5="Start";Makro1_start();"nichts")
Diese Wenn-Funktion prüft, ob in Zelle F5 der Text Start eingegeben wurde. Ist dies der Fall, wird das Makro mit der Bezeichnung "Makro1_start" aufgerufen und die entsprechenden Befehle ausgeführt. Im Beispiel wird nur der Text "Makro 1 wurde gestartet" ausgegeben. Wenn in die Zelle F5 etwas anderes als Start eingetragen wird, gibt die Wenn-Funktion den Text "nichts" zurück.
Da eine Wenn-Abfrage keine Sub-Prozedur sondern nur eine Function ausführen kann, muss der Umweg gegangen werden, dass
eine Function aufgerufen wird, welche wiederum die ensprechende Sub startet, siehe nachfolgenden VBA-Code:
{codecitation}
Da eine Wenn-Abfrage keine Sub-Prozedur sondern nur eine Function ausführen kann, muss der Umweg gegangen werden, dass |
eine Function aufgerufen wird, welche wiederum die ensprechende Sub startet. |
Function makro1_start()
'** Prozedur aufrufen
testmakro1
End Function
{/codecitation}
{codecitation}
Sub testmakro1()
MsgBox "Makro 1 wurde gestartet"
End Sub
{/codecitation}
Erfassen Sie diesen Code in ein Code-Modul.