Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1560to1564
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
Zeilen per Button ein- oder ausblenden
12.06.2017 09:16:18
Marco
Hallo nochmal ich habe ein weiteres anliegen.
Ich möchte per toggle button Zeilen ein- oder ausblenden in denen der Wert "Abgeschlossen" in der Spalte G drin steht. Jetzt habe ich unterschiedliche Lösungen im Internet gefunden aber keine passt auf mein Problem. Vielleicht wisst ihr eine Lösung. Danke schon mal an alle.
Viele Grüße Marco

14
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zeilen per Button ein- oder ausblenden
12.06.2017 09:30:41
yummi
Hallo Marco,
nimm doch den Autofilter und wähle Abgeschlossen ab.
Gruß
yummi
AW: Zeilen per Button ein- oder ausblenden
12.06.2017 09:33:17
Marco
Danke Yummi, das würde schon gehen, aber ich möchte mit mehreren Buttons verschiedene Zeilen ein bzw. ausblenden. Das wäre mit einem Toggle Button mittels VBA schneller und praktischer.
AW: Zeilen per Button ein- oder ausblenden
12.06.2017 09:43:56
yummi
Hallo Marco,
dann so:

Sub Zeilen_ausblenden()
Dim letztzeile as long
Application.ScreenUpdating = False
letztezeile = ActiveSheet.Cells(Rows.Count, 7).End(xlUp).Row   'Spalte G = 7
For i = 1 To letztezeile
If Cells(i, 7).Value = "Abgeschlossen" Then
Rows(i).Hidden = True
End If
Next i
Application.ScreenUpdating = True
End Sub
Sub Zeilen_einblenden()
Dim letztzeile as long
Application.ScreenUpdating = False
letztezeile = ActiveSheet.Cells(Rows.Count, 7).End(xlUp).Row   'Spalte G = 7
For i = 1 To letztezeile
Rows(i).Hidden = False
End If
Next i
Application.ScreenUpdating = True
End Sub

Jetzt noch die Makros deinen Button zuweisen und fertig.
Gruß
yummi

Anzeige
AW: Zeilen per Button ein- oder ausblenden
12.06.2017 09:56:30
Marco
Ui ich dachte eigentlich, dass das Programm viel viel kleiner ist. Sorry für die Umstände. Ich bin dir sehr dankbar es funktioniert super =)
AW: Zeilen per Button ein- oder ausblenden
12.06.2017 09:43:08
Bernd
Hi,
probier mal:
Private Sub ToggleButton1_Click()
Dim TB As ToggleButton
Set TB = ToggleButton1
Dim rngRow As Range
Dim cell_ As Range
If TB.Value = True Then
TB.Caption = "Zeilen ausblenden"
Cells.Rows.Hidden = False
Set rngRow = Nothing
Else
TB.Caption = "Zeilen einblenden"
On Error Resume Next
For Each cell_ In Columns(7).SpecialCells(xlCellTypeConstants, 2)
If cell_.Value = "Abgeschlossen" Then
If rngRow Is Nothing Then
Set rngRow = cell_.EntireRow
Else
Set rngRow = Union(rngRow, cell_.EntireRow)
End If
End If
Next
If Not rngRow Is Nothing Then rngRow.EntireRow.Hidden = True
End If
End Sub
MfG Bernd
Anzeige
AW: Zeilen per Button ein- oder ausblenden
12.06.2017 10:09:10
Marco
Hallo Bernd auch an dich vielen Dank dein Code funktioniert auch perfekt. Jetzt habe ich dennoch eine Frage.
Man kann ja Formen in Excel unter einfügen erstellen und denen Makros zuweisen. Ich würde gerne das Makro einer Form zuweisen, da ich die Farbe der Toggle Buttons nur begrenzt verändern kann und bei einer Form habe ich mehrere Möglichkeiten.
Ich möchte nämlich das der Button, beim einblenden der Zeilen grün ist und beim ausblenden der Zeilen innen weiß und der Rand nur grün ist. Geht das?
AW: Zeilen per Button ein- oder ausblenden
12.06.2017 10:19:08
Bernd
Hi,
mal auf die schnelle, Rest kannst ja selbst ein wenig probieren:
Option Explicit
Private Sub ToggleButton1_Click()
With ToggleButton1
.BackColor = IIf(.Value = True, RGB(0, 255, 0), RGB(255, 0, 0))
End With
Dim TB As ToggleButton
Set TB = ToggleButton1
Dim rngRow As Range
Dim cell_ As Range
If TB.Value = True Then
TB.Caption = "Zeilen ausblenden"
Cells.Rows.Hidden = False
Set rngRow = Nothing
Else
TB.Caption = "Zeilen einblenden"
On Error Resume Next
For Each cell_ In Columns(7).SpecialCells(xlCellTypeConstants, 2)
If cell_.Value = "Abgeschlossen" Then
If rngRow Is Nothing Then
Set rngRow = cell_.EntireRow
Else
Set rngRow = Union(rngRow, cell_.EntireRow)
End If
End If
Next
If Not rngRow Is Nothing Then rngRow.EntireRow.Hidden = True
End If
End Sub
MfG Bernd
Anzeige
AW: Zeilen per Button ein- oder ausblenden
12.06.2017 10:44:38
Marco
Danke Bernd es klappt. Aber ich wollte wissen ob es möglich ist dein Makro einem Rechteck zu zuweisen welches beim betätigen die Farbe ändert? Geht das?
AW: Zeilen per Button ein- oder ausblenden
12.06.2017 11:16:41
Bernd
Hi,
nunja, da es eigentlich nicht die Frage war, aber auch ich kein VBA Profi bin, kann ich Dir nicht weiter helfen, sorry.
MfG Bernd
AW: Zeilen per Button ein- oder ausblenden
12.06.2017 11:23:51
Marco
Ach kein Problem du hast mir so gut weitergeholfen. Ich lass es jetzt so wie es ist das passt auch. Vielen Dank nochmal =)
Gerne und Danke für die Rückmeldung - owT
12.06.2017 11:24:45
Bernd
AW: Gerne und Danke für die Rückmeldung - owT
12.06.2017 13:10:53
Marco
Hi Bernd ich habe doch noch eine Frage zum Toggle Button. Ich habe jetzt 3 Toggle Buttons erstellt und den Code dreimal kopiert und dann angepasst.
Beim ersten Button sollen alle Zeilen in denen eine 1 steht ausgeblendet werden beim zweiten alle mit einer 2 und beim dritten alle Zeilen mit einer 3. Das funktioniert. Aber wenn ich alle Zeilen in denen eine 1 steht wieder einblenden möchte werden alle eingeblendet. Bei den anderen verhält es sich genauso.
Könntest du mir dabei vielleicht helfen?
Der Code sieht gerade so aus:
Private Sub ToggleButton21_Click()
With ToggleButton21
.BackColor = IIf(.Value = True, RGB(255, 255, 255), RGB(126, 186, 86))
End With
Dim TB As ToggleButton
Set TB = ToggleButton21
Dim rngRow As Range
Dim cell_ As Range
If TB.Value = True Then
TB.Caption = "ausgeblendet"
Cells.Rows.Hidden = False
Set rngRow = Nothing
Else
TB.Caption = "eingeblendet"
On Error Resume Next
For Each cell_ In Columns(9).SpecialCells(xlCellTypeConstants, 9)
If cell_.Value = 1 Then
If rngRow Is Nothing Then
Set rngRow = cell_.EntireRow
Else
Set rngRow = Union(rngRow, cell_.EntireRow)
End If
End If
Next
If Not rngRow Is Nothing Then rngRow.EntireRow.Hidden = True
End If
ThisWorkbook.Worksheets("Tracking Liste").Cells(1, 1).Select
End Sub

Anzeige
AW: Gerne und Danke für die Rückmeldung - owT
12.06.2017 15:30:11
Marco
Weiß vielleicht jemand anders wie ich nur die Zeilen ein- und ausblenden kann die eine 1 stehen haben? Ich habe jetzt schon so viel versucht aber das gewünschte Ergebnis leider nicht erhalten
AW: Gerne und Danke für die Rückmeldung - owT
12.06.2017 17:08:48
Marco
Hat sich erledigt ich habe meinen Fehler gefunden =)

277 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige