Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema CommandButton
BildScreenshot zu CommandButton CommandButton-Seite mit Beispielarbeitsmappe aufrufen
Informationen und Beispiele zum Thema OptionButton
BildScreenshot zu OptionButton OptionButton-Seite mit Beispielarbeitsmappe aufrufen
Informationen und Beispiele zum Thema ScrollBar
BildScreenshot zu ScrollBar ScrollBar-Seite mit Beispielarbeitsmappe aufrufen
Informationen und Beispiele zum Thema SpinButton
BildScreenshot zu SpinButton SpinButton-Seite mit Beispielarbeitsmappe aufrufen
Informationen und Beispiele zum Thema TextBox
BildScreenshot zu TextBox TextBox-Seite mit Beispielarbeitsmappe aufrufen

Zeilen ausblenden über Button

Betrifft: Zeilen ausblenden über Button von: Andre
Geschrieben am: 16.05.2008 13:34:06

Hallo!

Mal eine (hoffentlich) kurze Sache.
In meiner Tabelle können in den Zellen der ersten Spalte folgende Dinge stehen (Text): Grün, Rot, Gelb. Es kann auch nur eine leere Zelle vorhanden sein. Also 4 ‚Zustände’.

Es geht mir darum: Wenn in den Zellen der ersten Spalte ‚Grün’ oder ‚Rot’ steht, soll die gesamte Zeile ausgeblendet werden. Bevorzugt über einen Button, mit dem ich das ein und ausschalten kann.
Weiß da einer was? Danke!

Da ich nicht gerade viel Ahnung von VBA habe, hilft mir die Archiv-Suche in diesem Fall nicht weiter. Einen Code ausprobieren kann ich aber. ;)

Andre

  

Betrifft: AW: Zeilen ausblenden über Button von: Klaus M.vdT.
Geschrieben am: 16.05.2008 13:43:45

Moin Andre,

Dieser Button blendet die aktuelle Zeile aus, wenn in ihrer Spalte A das Wort "Rot" oder "Grün" steht.

Private Sub CommandButton1_Click()
If Range("A" & ActiveCell.Row) = "Rot" Or Range("A" & ActiveCell.Row) = "Grün" Then
    ActiveCell.EntireRow.Hidden = True
End If
End Sub



Aber was meinst du mit "ein - ausschalten"? Oder soll die Zeile ausgeblendet werden, sobald du "Rot" eingibts?

Grüße,
Klaus M.vdT.


  

Betrifft: AW: Zeilen ausblenden über Button von: David
Geschrieben am: 16.05.2008 13:57:02

Da ich gerade heute ein ähnliches Problem hatte, hier mal meine Lösung als Vorschlag:

Sub zeilen_löschen2()

    Dim Zeile As Long, wks As Worksheet
    Set wks = Worksheets("Tabelle1")
    With wks
        For Zeile = 1 To .Cells(.Rows.Count, 1).End(xlUp).Row
            If Cells(Zeile, 1).Value = "grün" Or Cells(Zeile, 1).Value = "rot" Then
                Rows(Zeile & ":" & Zeile).Rows.Group
                Rows(Zeile & ":" & Zeile).EntireRow.Hidden = True
            End If
        Next
    End With

End Sub



Dabei werden die entsprechenden Zeilen als Gruppierung formatiert und anschließend ausgeblendet. Dies hat den Vorteil, dass du das Ausblenden ganz schnell wieder rückgängig machen kannst, indem du die Gruppierungsansicht erweiterst.

Gruß

David


  

Betrifft: AW: Zeilen ausblenden über Button von: Andre
Geschrieben am: 16.05.2008 13:57:23

Danke.

ich meine, dass ich auf einen 'Button' klicken kann, der mir wahlweise die Zeilen ausblendet oder auch wieder einblendet. Ein- Ausblenden also nur auf click auf den Button.

Hab mich wohl etwas ungeschickt ausgedrückt.


  

Betrifft: Siehe meine Lösung (ot) von: Andi
Geschrieben am: 16.05.2008 14:02:23

.


  

Betrifft: AW: Zeilen ausblenden über Button von: Andi
Geschrieben am: 16.05.2008 13:49:50

Hi,

mit folgendem Code kannst Du die Zeilen aus- bzw einblenden; nachdem Du den Button erzeugt hast, musst Du ihm einmalig in den Eigenschaften die Caption 'Ausblenden' zuweisen, danach springt die Beschriftung des Button automatisch um, je nach Zustand.

Private Sub CommandButton1_Click()
Dim lZeile As Long
Select Case CommandButton1.Caption
Case "Ausblenden"
  For lZeile = Range("A65536").End(xlUp).Row To 1 Step -1
    If Cells(lZeile, 1) = "Rot" Or Cells(lZeile, 1) = "Grün" Then
      Cells(lZeile, 1).EntireRow.Hidden = True
    End If
  Next lZeile
  CommandButton1.Caption = "Einblenden"
Case "Einblenden"
  ActiveSheet.Rows.Hidden = False
  CommandButton1.Caption = "Ausblenden"
End Select
End Sub



Schönen Gruß,
Andi


 

Beiträge aus den Excel-Beispielen zum Thema "Zeilen ausblenden über Button"