Supportnet / Forum / Tabellenkalkulation
wenn Funktion und Makro
Frage
Hallo miteinander!
Wieder eine Frage von einem Anfänger.
Ich möchte gerne nach einer positiven Abrage
bei einer "wenn Funktion" als Antwort ein Makro ablaufen lassen.
Nach dem Motto: Wenn A1 = "abc" dann Makro
Geht das?
Wenn ja, wie ist der Syntax hinter dem ;
Danke für jede Antwort
Paul
Antwort 1 von coros
Hi Paul,
nachfolgenden Code in das VBA-Projekt Deiner Tabelle kopieren.
Der Code macht folgendes: Wenn in Zelle A1 der Text abc steht, dann wird ein makro, in diesem Beispiel das Makro "Dein_Makro", ausgeführt. Wenn keine Textübereinstimmung vorhanden ist, passiert nichts. Für eine andere Bedingung als abc, muss in der Zeile
If Range("A1") = "abc" Then
der text abc, der in den Anführungsstrichen steht (""), abgeändert werden. Der Name Deines Makros muss gegen den Text
Dein_Makro
getauscht werden.
Ich hoffe, Du kommst klar. Wenn nicht, melde Dich noch mal.
MfG,
coros
Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du ein
Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.
nachfolgenden Code in das VBA-Projekt Deiner Tabelle kopieren.
Private Sub Worksheet_Change(ByVal Target As Range)
If Range("A1") = "abc" Then 'Wenn in Zelle A1 der Text abc steht, dann...
Dein_Makro '...führe das Makro "Dein Makro" aus.
End If 'Ende der If Abfrage
End Sub
Der Code macht folgendes: Wenn in Zelle A1 der Text abc steht, dann wird ein makro, in diesem Beispiel das Makro "Dein_Makro", ausgeführt. Wenn keine Textübereinstimmung vorhanden ist, passiert nichts. Für eine andere Bedingung als abc, muss in der Zeile
If Range("A1") = "abc" Then
der text abc, der in den Anführungsstrichen steht (""), abgeändert werden. Der Name Deines Makros muss gegen den Text
Dein_Makro
getauscht werden.
Ich hoffe, Du kommst klar. Wenn nicht, melde Dich noch mal.
MfG,
coros
Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du ein
Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.
Antwort 2 von Knasti
Hi coros,
habe mich wohl zu undeutlich ausgedrückt.
Der Sinn der Sache ist folgender:
In einer Tabelle geben viele Leute Daten ein.
Dabei errechtnet sich in einer Spalte jehweils ein "ja" oder "nein"
Jetzt möchte ich erreichen, daß jemand der mit seiner Eingabe ein "nein" verursacht, daran erinnert wird, in einer anderen Spalte eine Begründung einzugeben.
Also etwa so:
Wenn aktuelle Zeile z.B. D15="Nein" und E15="", dann MsgBox " Begründung eingeben"
Ich hoffe, Problem ist deutlicher geworden.
Gruß Paul
habe mich wohl zu undeutlich ausgedrückt.
Der Sinn der Sache ist folgender:
In einer Tabelle geben viele Leute Daten ein.
Dabei errechtnet sich in einer Spalte jehweils ein "ja" oder "nein"
Jetzt möchte ich erreichen, daß jemand der mit seiner Eingabe ein "nein" verursacht, daran erinnert wird, in einer anderen Spalte eine Begründung einzugeben.
Also etwa so:
Wenn aktuelle Zeile z.B. D15="Nein" und E15="", dann MsgBox " Begründung eingeben"
Ich hoffe, Problem ist deutlicher geworden.
Gruß Paul
Antwort 3 von coros
Hi Paul,
so sehe ich das aber auch, dass Du Dich wohl etwas undeutlich ausgedrückt hast. Hier nun das, was Dich sicherlich weiterbringen sollte, sofern die Aufgabenstellung in Deinem letzten Beitrag komplett war und nicht nur halb.
Ich hoffe, ich habe nun den Nagel auf den Kopf getroffen. Wenn nicht, nochmal posten.
MfG,
coros
Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du ein
Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.
so sehe ich das aber auch, dass Du Dich wohl etwas undeutlich ausgedrückt hast. Hier nun das, was Dich sicherlich weiterbringen sollte, sofern die Aufgabenstellung in Deinem letzten Beitrag komplett war und nicht nur halb.
Private Sub Worksheet_Change(ByVal Target As Range)
If Range("D15") = "Nein" And Range("E15") = "" Then
MsgBox "Begründung eingeben!"
End If
End Sub
Ich hoffe, ich habe nun den Nagel auf den Kopf getroffen. Wenn nicht, nochmal posten.
MfG,
coros
Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du ein
Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.