Wenn-Funktion per VBA
#1
Question 
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
Antworten Top
#2
Hallo,

mal abgesehen von Sinn und Unsinn, das ist VBA?!
[-] Folgende(r) 1 Nutzer sagt Danke an Jonas0806 für diesen Beitrag:
  • o0Julia0o
Antworten Top
#3
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.
Antworten Top
#4
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.
[-] Folgende(r) 1 Nutzer sagt Danke an Käpt'n Blaubär für diesen Beitrag:
  • o0Julia0o
Antworten Top
#5
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.
Antworten Top
#6
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.
[-] Folgende(r) 1 Nutzer sagt Danke an Käpt'n Blaubär für diesen Beitrag:
  • o0Julia0o
Antworten Top
#7
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;"").
Antworten Top
#8
Hallo Julia,

wenn Du im Else-Zweig eh nichts stehen hast, kannst Du das Else weglassen.
Gruß Stefan
Win 10 / Office 2016
[-] Folgende(r) 1 Nutzer sagt Danke an Steffl für diesen Beitrag:
  • o0Julia0o
Antworten Top
#9
achso, danke. Naja, immerhin eine Zeile Code weniger :)
Antworten Top
#10
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:
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
[-] Folgende(r) 1 Nutzer sagt Danke an schauan für diesen Beitrag:
  • o0Julia0o
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste