Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1360to1364
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
Spalten ausblenden mit zwei CheckBoxen
14.05.2014 15:09:31
Alexander
Hallo liebe Forumsmitglieder,
als absoluter VBA-Neuling habe ich innerhalb der letzten Wochen versucht, mir ein paar Kenntnisse - über einschlägige Forenbeiträge und Suchmaschinenergebnisse bin ich auch bereits etwas vorangekommen - anzueignen. Doch nun komme ich bedauerlicherweise nicht weiter und erhoffe mir, hier etwas Unterstützung erhalten zu können.
Ich möchte gern mit zwei CheckBoxen ganze Spalten ausblenden.
Folgendes habe ich mir zusammengereimt:
Private Sub UST_Pflicht_Click()
If UST_Pflicht.Value = False Then
Range("AF:AF").EntireColumn.Hidden = True
Range("AH:AH").EntireColumn.Hidden = True
Else
UST_Pflicht.Value = True
Range("AF:AF").EntireColumn.Hidden = False
Range("AH:AH").EntireColumn.Hidden = False
End If
End Sub

Private Sub KEINE_VAR_Click()
If KEINE_VAR.Value = True Then
Range("AE:AF").EntireColumn.Hidden = True
Else
KEINE_VAR.Value = False
Range("AE:AF").EntireColumn.Hidden = False
End If
End Sub

Es funktioniert auch in etwa, doch lassen sich die Spalten, wenn einmal ausgeblendet nur über Umwege wieder einblenden. Läuft nicht wirklich geschmeidig.
Für Eure Ratschläge bin ich sehr dankbar.
Grüße,
Alex

16
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Spalten ausblenden mit zwei CheckBoxen
14.05.2014 15:24:30
Rudi
Hallo,
ohne If und Else:
Private Sub UST_Pflicht_Click()
Range("AF:AF").EntireColumn.Hidden = Not UST_Pflicht
Range("AH:AH").EntireColumn.Hidden = Not UST_Pflicht
End Sub
Private Sub KEINE_VAR_Click()
Range("AE:AF").EntireColumn.Hidden = Not KEINE_VAR
End Sub
das
UST_Pflicht.Value = True

löst wieder das Kick-Event aus.
Gruß
Rudi

AW: Spalten ausblenden mit zwei CheckBoxen
14.05.2014 15:35:31
Alexander
Hallo Rudi,
vielen Dank für die schnelle Rückmeldung.
Habe den Code mal eingefügt - funktioniert leider noch nicht so, wie ich es mir vorstelle:
Mit der ersten CheckBox möchte ich, wenn der Haken gesetzt ist, die Spalten AF und AH einblenden.
Mit der zweiten Checkbox sollen, wenn Haken gesetzt ist, die Spalten AE un AF ausgeblendet werden.
Und auch, wenn die Haken unabhängig von einander angeklickt werden, sollen die Spalten auch wieder ein-, bzw. ausgeblendet werden.
Könnte es sein, dass ich hier ggf. mit einer Schleife weiterkomme? Oder wozu werden diese benutzt?
Grüße,
Alex

Anzeige
AW: Spalten ausblenden mit zwei CheckBoxen
14.05.2014 16:01:04
Rudi
Hallo,
jetzt haben ja beide CheckBoxen Einfluss auf AF.
Soll also AF nur eingeblendet werden, wenn beide angehakt sind oder was?
Gruß
Rudi

AW: Spalten ausblenden mit zwei CheckBoxen
14.05.2014 16:16:39
Alexander
Hallo,
ja, beide haben Einfluss auf AF.
Folgend der Versuch, die gewünschte Situation etwas detaillierter darszustellen:
Die Spalten AF und AH sollen von Beginn an ausgeblendet sein (UST_Pflicht.Value = False / kein Haken gesezt). Wenn UST_Pflicht.Value = True, bzw. wenn in der ersten CheckBox der Haken gesetzt wird, sollen die Spalten AF und AH eingeblendet werden.
Weiterhin sollen, sofern bei der zweiten CheckBox der Haken gesetzt werden sollte (KEINE_VAR.Value = True), die Spalten AE und AF ausgeblendet sein.
Ergibt dies Sinn? Ist es nun etwas nachvollziehbarer?
Vielen Dank für die Hilfe!
Grüße,
Alex

Anzeige
AW: Spalten ausblenden mit zwei CheckBoxen
14.05.2014 16:34:32
Rudi
Hallo,
Wenn UST_Pflicht.Value = True, bzw. wenn in der ersten CheckBox der Haken gesetzt wird, sollen die Spalten AF und AH eingeblendet werden.
AF auch einblenden, obwohl cbx2=true?

AW: Spalten ausblenden mit zwei CheckBoxen
14.05.2014 17:10:42
Alexander
Hallo Rudi,
nee, für den Fall, dass cbx1=true und cbx2=true, AF ebenfall, bzw. trotzdem ausblenden.

AW: Spalten ausblenden mit zwei CheckBoxen
15.05.2014 01:22:55
Ewald
Hallo,
hier mal das Grundgerüst des Codes
Dim Vorgabe As Byte
If Not cbx1 And Not cbx2 Then Vorgabe = 0
If cbx1 And Not cbx2 Then Vorgabe = 1
If Not cbx1 And cbx2 Then Vorgabe = 2
If cbx1 And cbx2 Then Vorgabe = 3
Select Case Vorgabe
Case 0
'was passieren soll bei beide aus
Case 1
'was passieren soll bei cbx1 aktiv
Case 2
'was passieren soll bei cbx2 aktiv
Case 3
'was passieren soll bei beide ein
End Select
die erste Zeile in der Codeanweisung muß immer erst alle Spalten einblenden
ActiveSheet.Columns.Hidden = False
Gru0 Ewald

Anzeige
AW: Spalten ausblenden mit zwei CheckBoxen
15.05.2014 10:14:12
Ewald
Hallo Alexander,
liste mal die Zustände auf
0 beide aus dann
1 cbx1 ein dann
2 cbx2 ein dann
3 beide ein dann
wenn diese Info vorliegen,sehen wir weiter
Gruß Ewald

AW: Spalten ausblenden mit zwei CheckBoxen
16.05.2014 10:07:49
Alexander
Hallo Ewald,
vielen Dank für Deine Unterstützung.
Hier die gewünschten Zustände:
0 beide aus dann Spalten AF und AH ausgeblendet
1 cbx1 ein dann Spalten AF und AH eingeblendet
2 cbx2 ein dann Spalten AE und AF ausgeblendet
3 beide ein dann Spalten AE, AF und AH ausgeblendet
Grüße,
Alex

AW: Spalten ausblenden mit zwei CheckBoxen
16.05.2014 13:09:24
Ewald
Hallo Alex,
dann sollte dies funktionieren
Private Sub cbx1_Click()
Dim Vorgabe As Byte
If Not cbx1 And Not cbx2 Then Vorgabe = 0
If cbx1 And Not cbx2 Then Vorgabe = 1
If Not cbx1 And cbx2 Then Vorgabe = 2
If cbx1 And cbx2 Then Vorgabe = 3
Select Case Vorgabe
Case 0
ActiveSheet.Columns.Hidden = False
Columns(32).EntireColumn.Hidden = True
Columns(34).EntireColumn.Hidden = True
Case 1
ActiveSheet.Columns.Hidden = False
Case 2
ActiveSheet.Columns.Hidden = False
Columns(31).EntireColumn.Hidden = True
Columns(32).EntireColumn.Hidden = True
Case 3
ActiveSheet.Columns.Hidden = False
Columns(31).EntireColumn.Hidden = True
Columns(32).EntireColumn.Hidden = True
Columns(34).EntireColumn.Hidden = True
End Select
End Sub
Private Sub cbx2_Click()
Dim Vorgabe As Byte
If Not cbx1 And Not cbx2 Then Vorgabe = 0
If cbx1 And Not cbx2 Then Vorgabe = 1
If Not cbx1 And cbx2 Then Vorgabe = 2
If cbx1 And cbx2 Then Vorgabe = 3
Select Case Vorgabe
Case 0
ActiveSheet.Columns.Hidden = False
Columns(32).EntireColumn.Hidden = True
Columns(34).EntireColumn.Hidden = True
Case 1
ActiveSheet.Columns.Hidden = False
Case 2
ActiveSheet.Columns.Hidden = False
Columns(31).EntireColumn.Hidden = True
Columns(32).EntireColumn.Hidden = True
Case 3
ActiveSheet.Columns.Hidden = False
Columns(31).EntireColumn.Hidden = True
Columns(32).EntireColumn.Hidden = True
Columns(34).EntireColumn.Hidden = True
End Select
Gruß Ewald

Anzeige
AW: Spalten ausblenden mit zwei CheckBoxen
16.05.2014 13:47:48
Alexander
Hi Ewald,
super! Klappt alles hervorragend! :-)
Bis auf die Tatsache, dass natürlich jetzt durch ActiveSheet.Columns.Hidden = False auch alle anderen Spalten, die ich unabhängig von 31 bis 34 mit anderen Schaltflächen aus- bzw. einblende, nun natürlich auch alle wieder eingeblendet werden. Lässt sich das noch irgendwie umgehen?
Dies sind die betroffenen Schaltflächen, zu denen noch einige mehr der gleichen Art hinzukommen sollen:
Private Sub Vertrag1_ZWEI_Preiskomponenten_Click()
If Vertrag1_ZWEI_Preiskomponenten.Value = False Then
Application.ScreenUpdating = False
Range("H:J").EntireColumn.Hidden = True
Else
Vertrag1_ZWEI_Preiskomponenten.Value = True
Range("H:J").EntireColumn.Hidden = False
End If
End Sub

Private Sub VERTRAG2_hinzufügen_Click()
If VERTRAG2_hinzufügen.Value = True Then
Application.ScreenUpdating = False
Range("M:U").EntireColumn.Hidden = False
Range("Q:S").EntireColumn.Hidden = True
Vertrag2_ZWEI_Preiskomponenten.Visible = True
Else
VERTRAG2_hinzufügen.Value = False
Range("M:U").EntireColumn.Hidden = True
Vertrag2_ZWEI_Preiskomponenten.Visible = False
End If
End Sub
Grüße
Alex

Anzeige
AW: Spalten ausblenden mit zwei CheckBoxen
16.05.2014 14:33:08
Ewald
Hallo Alex,
dann setz nur den Bereich zurück
anstatt
ActiveSheet.Columns.Hidden = False
dann
Columns("AE:AH").EntireColumn.Hidden = False
Gruß Ewald

AW: Spalten ausblenden mit zwei CheckBoxen
16.05.2014 14:37:59
Alexander
Hallo Ewald,
ich danke Dir! Das funktioniert natürlich besser als, mit Range, was ich soeben versucht habe.
Dann schließe ich mal den Thread.
Nochmals Danke für Eure Hilfe!
Alex

AW: Spalten ausblenden mit zwei CheckBoxen
16.05.2014 14:42:22
Alexander
Hallo Ewald,
spitzenmäßig! Das funitioniert erheblich besser als mit Range(...), womit ich dies eben noch probiert hatte.
Danke für Eure Unterstützung! Toll, dass es dieses Forum gibt!
Grüße
Alex

Anzeige
AW: Spalten ausblenden mit zwei CheckBoxen
16.05.2014 14:42:23
Alexander
Hallo Ewald,
spitzenmäßig! Das funitioniert erheblich besser als mit Range(...), womit ich dies eben noch probiert hatte.
Danke für Eure Unterstützung! Toll, dass es dieses Forum gibt!
Grüße
Alex

AW: Spalten ausblenden mit zwei CheckBoxen
16.05.2014 14:42:25
Alexander
Hallo Ewald,
spitzenmäßig! Das funitioniert erheblich besser als mit Range(...), womit ich dies eben noch probiert hatte.
Danke für Eure Unterstützung! Toll, dass es dieses Forum gibt!
Grüße
Alex

311 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige