Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1616to1620
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
Button um Zeilen auszuschlaten
28.03.2018 13:26:21
simon
Hallo Zusammen
Kann mir jemand weiter helfen?
ich benötige einen Code, welcher mir die Zeilen ein-/ausschaltet welche ein "x" haben.
Wenn ich in der Zelle "N7:N" ein "x" stehen hab, möchte ich die jeweilige Zeile ausgeblendet haben.
Nun möchte ich diese mit dem selben Button aber auch wieder "einschalten".
also sowas wie on/off.
es können hunderte Zeilen ein "x" haben, diese sollten alle immer gleichzeitig ein und ausgeschaltet werden können.
gibt es da einen Button-Code welche ich so Programmieren kann.
mfg simon

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Button um Zeilen auszuschlaten
28.03.2018 14:03:09
Werner
Hallo Simon,
bescheidene Frage: Warum benutzt du nicht einfach den Autofilter?
Gruß Werner
AW: Button um Zeilen auszuschlaten
28.03.2018 14:08:56
simon
hi Werner
Es geht darum, das die Pendenzen nach Ablauf/Erledigung mit einem "X" versehen und so ausgeblendet werden.
Diese wandern dann sozusagen ins Archiv (werden ausgeblendet), dass bedeutet ich möchte die Pendenzen ein und ausblenden um etwas nachzuschauen und dies geht über den Button für den Enduser einfacher.
AW: Button um Zeilen auszuschlaten
28.03.2018 14:42:00
simon
hab da jetzt mal was zusammen gebastelt.
Aber ich weis nicht wie ich es Schafe, dass bei einem erneuten Click auf den Button die Zeilen wieder eingeblendet werden.
Sub Archiv()
Dim loX As Long
Application.ScreenUpdating = False 'Bildschirmaktualisierung aus
Application.EnableEvents = False 'Ereignismakros deaktivieren
For loX = 7 To 5000
Rows(loX).EntireRow.Hidden = Cells(loX, 14).Value = "x"
Next
Application.EnableEvents = True 'Ereignismakros aktivieren
Application.ScreenUpdating = True 'Bildschirmaktualisierung wieder an
End Sub

Anzeige
AW: Button um Zeilen auszuschlaten
28.03.2018 16:52:29
Werner
Hallo Simon,
ehrlich gesagt hatte ich eigentlich keine große Lust mehr hier noch weiter zu machen, nachdem du schon einen neuen Beitrag zu dem Thema verfasst hast.
Aber da ich den Code jetzt schon mal zusammengeschrieben habe, stelle ich ihn halt doch ein.
Vorarbeiten:
Bitte einen CommandButton aus den ActiveX Steuerelementen auf dein Tabellenblatt legen. In den Eigenschaften des CommandButton die Caption auf "Ausblenden" ändern.
Dann diesen Code ins Codemodul des Tabellenblattes, auf dem sich auch der CommandButton befindet.
Private Sub CommandButton1_Click()
Dim i As Long, loZeile As Long
With Worksheets("Test2") 'Blattname anpassen
'Ermitteln der letzten belegten Zelle in Spalte N (14)
loZeile = .Cells(.Rows.Count, 14).End(xlUp).Row
'Wenn Beschriftung der Schaltfläche = "Ausblenden" dann
If .CommandButton1.Caption = "Ausblenden" Then
'Schleife von Spalte A (1) bis Spalte N (14)
For i = 1 To 14
'in jeder Spalte die Filterpfeile des Autofilter ausschalten
ActiveSheet.Range("A7:N" & loZeile).AutoFilter Field:=i, visibledropdown:=False
Next
'Spalte N nach ungleich "x" filtern
.Range("A7:N" & loZeile).AutoFilter Field:=14, Criteria1:="x"
'Beschriftung der Schaltfläche auf "Einblenden" ändern
.CommandButton1.Caption = "Einblenden"
'Wenn Beschriftung der Schaltfläche = "Einblenden" dann
ElseIf .CommandButton1.Caption = "Einblenden" Then
'Autofilter ausschalten
If .AutoFilterMode = True Then .AutoFilterMode = False
'Beschriftung der Schaltfläche auf "Ausblenden" ändern
.CommandButton1.Caption = "Ausblenden"
End If
End With
End Sub
Das Makro verwendet zum Ein-/Ausblenden den Autofilter, ohne dass du das mitbekommst, weil die Filterpfeile ausgeblendet werden.
Das Tabellenende ist nicht fix auf 5000 eingestellt wie bei deinem Code. Die letzte belegte Zelle wird durch den Code in der Spalte A von unten nach oben ermittelt - ist also flexibel wenn die Daten erweitert werden.
Ausgeblendet/Ausgefiltert werden alle Zeilen die in Spalte N ein "x" stehen haben.
Gruß Werner
Anzeige
AW: Button um Zeilen auszuschlaten
29.03.2018 10:47:30
simon
hi Werner
Besten Dank für deine Bemühungen!
Dein Code Funktioniert Perfekt!!! Hab jetzt diesen genommen, da er eine schönere Oberfläche generiert ohne die Filter;)
Besten dank und sorry für die Ungeduld!!!
mfg simon
AW: Button um Zeilen auszuschlaten
29.03.2018 10:47:31
simon
hi Werner
Besten Dank für deine Bemühungen!
Dein Code Funktioniert Perfekt!!! Hab jetzt diesen genommen, da er eine schönere Oberfläche generiert ohne die Filter;)
Besten dank und sorry für die Ungeduld!!!
mfg simon
Gerne u. Danke für die Rückmeldung...
29.03.2018 11:27:58
Werner
Hallo Simon,
...was du mit der "schöneren Oberfläche" meinst ist mir nicht klar. Der Vorteil ist, dass der Autofilter wesentlich schneller ist als eine Lösung die per Schleife die Zeilen ausblendet.
Und zum anderen Thema: Du solltest nicht vergessen, dass hier die Hilfe freiwillig, ohne Bezahlung angeboten wird. Die Helfer sind nicht nur für dich da und haben auch noch einen Beruf mit dem sie ihre Brötchen verdienen. Das solltest du vielleicht nicht vergessen.
Wenn ein Problem schon angegangen wurde, aber noch nicht abschließend gelöst ist, dann bitte keinen neuen Beitrag aufmachen sondern im Eingangsbeitrag bleiben und diesen als "offen" markieren.
Das hat auch den weiteren Vorteil, dass andere Helfer im Bilde darüber sind, was schon Lösungstechnisch gemacht wurde.
Gruß Werner
Anzeige

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige