Clever-Excel-Forum

Normale Version: Wenn-Funktion per VBA
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2
hi, kann man die Wenn-Funktion auch per VBA nutzen?

Also etwa so:
Code:
If Worksheets("Rech").Range("A17") = True Then GoTo Drehen
Drehen
Call CommandButton1_Click
Else
End Sub
Hallo,

mal abgesehen von Sinn und Unsinn, das ist VBA?!
jo, aber funzte nicht. Ich habe das jetzt so geschafft:
Code:
If Worksheets("Rech").Range("A17") = True Then
Call CommandButton1_Click
Else
End If
End Sub
Etwas blöd, weil goto nicht funktioniert, aber da in diesem Fall nicht so viel Sprünge notwendig sind, klappt das ja auch so.
Hallo Julia,

Zitat:If Worksheets("Rech").Range("A17") = True Then
Call CommandButton1_Click

'   ....   was soll denn hier passieren?    .... fragt sich der geneigte Mitleser

Else

'   ....   was soll denn hier passieren?    .... fragt sich der geneigte Mitleser einmal mehr

End If
End Sub

Nochmal der auch von anderen schon geäußerte Vorschlag:
Du willst doch mit VBA arbeiten. Dann solltest Du Dich auch ein bischen
intensiver um  das Verständnis der VBA-Grundlagen bemühen.
hi, in beiden Fällen soll zu End Sub gesprungen werden, also das Makro beendet werden. Das funktioniert ja jetzt auch so wie gewünscht.
Hallöchen Julia,

alles klar, ... auf die Möglichkeit, einen Button "für nichts" bzw. in diesem Fall sogar "für doppelt-nichts" zu nutzen, sorry ...,
auf diese Möglichkeit muß man erst mal kommen.
Also beim Commandbutton1clickcode dreht sich ein Rad. Es soll sich aber nur drehen, wenn A17 = True ist, ansonsten soll die Sub beendet werden. Ist doch vom Grundsatz ganz easy.. so wie eine Wenn-Formel. =Wenn(A17=True;führeCommandbutton1clickcode aus;"").
Hallo Julia,

wenn Du im Else-Zweig eh nichts stehen hast, kannst Du das Else weglassen.
achso, danke. Naja, immerhin eine Zeile Code weniger :)
Hallöchen,

If Worksheets("Rech").Range("A17") <> True Then Exit Sub

oder

If Worksheets("Rech").Range("A17") = True Then Call CommandButton1_Click

wobei man mehrfach genutzten Code auch gerne mal auslagern soll:

Private Sub CommandButton1_Click()
Call MachWas
End Sub

Sub GotoGehtNicht()
If Worksheets("Rech").Range("A17") = True Then Call MachWas
End Sub

Public Sub MachWas()
MsgBox "Wird Zeit das Du anfängst"
End Sub



und goto geht übrigens so - wichtig ist der Doppelpunkt.

Goto dorthin
...
dorthin:
Seiten: 1 2