Registriert seit: 15.11.2016
Version(en): Microsoft Excel 2010
17.11.2016, 09:15
(Dieser Beitrag wurde zuletzt bearbeitet: 17.11.2016, 09:15 von J21.)
Hätte aber doch noch eine Frage, ich hab versucht in diesem Fall mehrere Rows an eine Checkbox zu verknüpfen.
Rows("4:20").Select
Rows("59:79").Select
Selection.EntireRow.Hidden = False
Funktioniert aber nicht, hab schon andere Methoden versucht, hat aber nicht geklappt. :)
Würde mich um eine Antwort sehr freuen. (Hab mir jetzt auch ein bisschen wissen angeeignet)
Registriert seit: 15.11.2016
Version(en): Microsoft Excel 2010
17.11.2016, 09:37
(Dieser Beitrag wurde zuletzt bearbeitet: 17.11.2016, 09:37 von J21.)
Zitat: Hallo,
Private Sub CheckBox1_Click()
Rows("21:79").Hidden = CheckBox1
Rows("5:20").Hidden = CheckBox19
Rows("88:100").Hidden = Not CheckBox19
End Sub
Gruß Uwe
Hab ich schon anders erledigt. :)
Registriert seit: 11.04.2014
Version(en): Office 2007
17.11.2016, 10:49
(Dieser Beitrag wurde zuletzt bearbeitet: 17.11.2016, 10:49 von Steffl.
Bearbeitungsgrund: Code geändert
)
Hallo,
(17.11.2016, 09:15)J21 schrieb: Hätte aber doch noch eine Frage, ich hab versucht in diesem Fall mehrere Rows an eine Checkbox zu verknüpfen.
Rows("4:20").Select
Rows("59:79").Select
Selection.EntireRow.Hidden = False
Funktioniert aber nicht, hab schon andere Methoden versucht, hat aber nicht geklappt. :)
versuche es mal mit
Code:
Sub rngAusblenden()
Dim rngBereich As Range
Set rngBereich = Range("4:20,59:79")
rngBereich.EntireRow.Hidden = False
End Sub
Gruß Stefan
Win 10 / Office 2016
Registriert seit: 15.11.2016
Version(en): Microsoft Excel 2010
(17.11.2016, 10:49)Steffl schrieb: Hallo,
versuche es mal mit
Code:
Sub rngAusblenden()
Dim rngBereich As Range
Set rngBereich = Range("4:20,59:79")
rngBereich.EntireRow.Hidden = False
End Sub
Wird aber nicht funktionieren, da:
Private Sub CheckBox19_Click()
If CheckBox1 = True Then
Dim rngBereich As Range
Set rngBereich = Range("4:20,59:79")
rngBereich.EntireRow.Hidden = True
Else
Dim rngBereich As Range
Set rngBereich = Range("4:20,59:79")
rngBereich.EntireRow.Hidden = False
End If
End Sub
ich benutzt schon ein private sub um die checkbox verknüpfen ein weiteren sub kann ich ja nicht machen
Registriert seit: 11.04.2014
Version(en): Office 2007
17.11.2016, 11:30
(Dieser Beitrag wurde zuletzt bearbeitet: 17.11.2016, 11:36 von Steffl.
Bearbeitungsgrund: Beitrag ergänzt, Code geändert
)
Hallo,
so wie Du es gepostest hast, geht es auch nicht. Mache es so
Code:
Private Sub CheckBox19_Click()
Dim rngBereich As Range
Set rngBereich = Range("4:20,59:79")
If CheckBox1 = True Then
rngBereich.EntireRow.Hidden = True
Else
rngBereich.EntireRow.Hidden = False
End If
End Sub
oder so
Code:
Private Sub CheckBox19_Click()
Dim rngBereich As Range
Set rngBereich = Range("4:20,59:79")
rngBereich.EntireRow.Hidden = CheckBox1
End Sub
Zitat:ich benutzt schon ein private sub um die checkbox verknüpfen ein weiteren sub kann ich ja nicht machen
???? So ist es halt, wenn man nur Codefragmente postet, die Helfer wissen nicht, was es sonst noch an Code vorhanden ist. Könntest Du die Datei hochladen?
Gruß Stefan
Win 10 / Office 2016
Registriert seit: 15.11.2016
Version(en): Microsoft Excel 2010
Private Sub CheckBox1_Click()
If CheckBox1 = True Then
Rows("20:79").Select
Selection.EntireRow.Hidden = True
Range("B5").Select
Else
Rows("20:79").Select
Selection.EntireRow.Hidden = False
Range("B5").Select
End If
End Sub
Private Sub CheckBox19_Click()
Dim rngBereich As Range
Set rngBereich = Range("4:20,59:79")
If CheckBox1 = True Then
rngBereich.EntireRow.Hidden = True
Else
rngBereich.EntireRow.Hidden = False
End If
End Sub
wird ja auch nicht wieder funktionieren, ich muss ja ne "range" angeben.
Der erste Code oben funktioniert einwandfrei. (liegt aber auch daran das ich da nicht 2 verschiedene "rows" brauche. .)
Danke für deine Bemühungen :)
Mit freundlichen Grüßen
Jan/J21
Registriert seit: 15.11.2016
Version(en): Microsoft Excel 2010
Habs geschaft:
Private Sub CheckBox19_Click()
If CheckBox19 = True Then
ActiveSheet.Rows("4:20").Hidden = True
ActiveSheet.Rows("59:79").Hidden = True
Else
ActiveSheet.Rows("4:20").Hidden = False
ActiveSheet.Rows("59:79").Hidden = False
End If
End Sub
Registriert seit: 12.10.2014
Version(en): 365 Insider (32 Bit)
Dennoch geht es viel einfacher:
Code:
Range("4:20,59:79").EntireRow.Hidden = CheckBox19
Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag.
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Registriert seit: 10.04.2014
Version(en): 2016 + 365
17.11.2016, 16:41
(Dieser Beitrag wurde zuletzt bearbeitet: 17.11.2016, 16:42 von Rabe.)
Hi,
als Erläuterung zum besseren Verständnis:
Wenn die CheckBox 19 angeklickt wird, wird sie TRUE, wenn sie wieder abgeklickt wird sie FALSE.
Mit diesen beiden Zuständen werden dann in nur
einer Zeile ohne weitere IF THEN ElSE usw.-Spielereien die Bereiche ein- oder ausgeblendet.
(17.11.2016, 15:39)RPP63 schrieb: Dennoch geht es viel einfacher:
Code:
Range("4:20,59:79").EntireRow.Hidden = CheckBox19