Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1452to1456
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Kombinieren ähnlicher If statements

Kombinieren ähnlicher If statements
28.10.2015 19:12:09
Martin
Hallo,
ich bin VBA-Neuling und habe folgenden Code in einer Userform, der verschiedenen Checkboxen ein Event zuweist.
Der Code funktioniert soweit, sieht aber für mich sehr stark nach Wiederholung aus (da ich insgesamt 5 Checkboxen habe).
Da der Code für jede Checkbox identisch ist (einziger Unterschied: Name / fortlaufende Nummer der Checkbox = Name des auszublendenden Bereichs), dachte ich, man könnte dies vielleicht auch kombinieren und verkürzen (z.B. durch einen Loop).
Kann mir jemand damit helfen und mir vielleicht auch eine kurze Erklärung geben ?
Mein Code (restliche 2 Checkboxen analog):
Private Sub CheckBox1_Change()
Worksheets(2).Unprotect Password:=strPw
If CheckBox1.Value = True Then
Worksheets(2).Range("Option1").EntireRow.Hidden = False
Else
Worksheets(2).Range("Option1").EntireRow.Hidden = True
End If
Worksheets(2).Protect Password:=strPw, UserInterfaceOnly:=True
End Sub
Private Sub CheckBox2_Change()
Worksheets(2).Unprotect Password:=strPw
If CheckBox2.Value = True Then
Worksheets(2).Range("Option2").EntireRow.Hidden = False
Else
Worksheets(2).Range("Option2").EntireRow.Hidden = True
End If
Worksheets(2).Protect Password:=strPw, UserInterfaceOnly:=True
End Sub
Private Sub CheckBox3_Change()
Worksheets(2).Unprotect Password:=strPw
If CheckBox3.Value = True Then
Worksheets(2).Range("Option3").EntireRow.Hidden = False
Else
Worksheets(2).Range("Option3").EntireRow.Hidden = True
End If
Worksheets(2).Protect Password:=strPw, UserInterfaceOnly:=True
End Sub
Vielen Dank im Voraus,
Michael Och

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Kombinieren ähnlicher If statements
28.10.2015 19:40:50
Uduuh
Hallo,
so
Private Sub CheckBox1_Change()
Call CheckboxChange(CheckBox1)
End Sub
Sub CheckboxChange(objCBx As Object)
With Worksheets(2)
.Unprotect Password:=strPw
.Range("Option" & Right(objCBx.Name, 1)).EntireRow.Hidden = Not objCBx
.Protect Password:=strPw, UserInterfaceOnly:=True
End With
End Sub
Gruß aus’m Pott
Udo

AW: Kombinieren ähnlicher If statements
28.10.2015 19:52:21
Martin
Hallo Udo,
vielen Dank - das ist super so, perfekt !
Viele Grüße und einen schönen Abend,
Martin
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige