Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Spalten ausblenden wenn Bedingung erfüllt

Spalten ausblenden wenn Bedingung erfüllt
21.10.2019 12:39:26
Chris
Der File-Upload funktioniert bei mir komischerweise nicht. Gibt es alternativen zum Hochladen?
Hallo zusammen,
da mein letzter Aufruf kaum Aufmerksamkeit bekam, jetzt noch einmal mit Beispieldatei.
Was ich benötige:
Spalten-Filterung ab Spalte F (bis Z) durch Auswahl des Dropdown-Menüs in C2.
Es sollen also zum Beispiel bei Auswahl "Handball" alle Spalten ab F ausgeblendet werden, die NICHT das Wort Handball beinhalten.
Ich hoffe durch die Beispieldatei kann mir nun weiter geholfen werden.
Liebe Grüße und vielen Dank im Voraus!
Chris
Anzeige

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Spalten ausblenden wenn Bedingung erfüllt
21.10.2019 12:41:58
Chris
Hier jetzt auch die Beispieldatei:
https://www.herber.de/bbs/user/132626.xlsx
LG
Chris
AW: Spalten ausblenden wenn Bedingung erfüllt
21.10.2019 14:33:51
Daniel
HI
ich würde da so vorgehen:
1. schreibe in F2 (bis Z2) folgende Formel:
=Wenn(oder($C$2="Gesamt";$C$2=F3);"";1)

die Formel kennzeichnet dir alle auszublendenden Spalten mit der Zahl 1
2. zum ausblenden kannst du dann so vorgehen
a) von Hand:
- markiere die Zeile 2
- schränke die Auswahl auf alle Formeln mit Zahl als Ergebnis ein
(Menü: Start - Bearbeiten - Suchen und Auswählen - Inhalte - Formeln - Zahlen)
- blende dann die Spalten mit den selektierten Zellen aus (über den Menüpunkt Zellen - Format - Sichtbarkeit)
b) per Code geht's natürlich auch bspw im Change-Event wie schon von anderen gezeigt, aber jetzt mit Hilfe der Formel deutlich kürzer:
Cells.EntireColumn.Hidden = False
With Rows(2)
if Worksheetfunction.Sum(.Cells) > 0 then _
.SpecialCells(xlcelltypeformulas, 1).EntireColumn.Hidden = True
end with
Gruß Daniel
Anzeige
AW: Spalten ausblenden wenn Bedingung erfüllt
21.10.2019 13:21:59
fcs
Hallo Chris,
für den Upload bitte die Hinweise bzgl Pfad, Dateiname und Dateigröße hier beachten:
https://www.herber.de/forum/file_upload.html
Nachfolgend entsprechende Makros für die gewünschte Aktion.
LG
Franz
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address(False, False, xlA1) = "C2" Then
Call Spalten_ohne_Suchwort_ausblenden(varSuch:=Target.Text, wks:=ActiveSheet, _
Spalte_1:=6, Spalte_L:=26)
End If
End Sub
'Makro in einem allgemeinen Modul oder im Code-Modul des Tabellenblatts mit dem Dropdown
Sub Spalten_ohne_Suchwort_ausblenden(ByVal varSuch As Variant, wks As Worksheet, _
ByVal Spalte_1 As Long, ByVal Spalte_L As Long, _
Optional ByVal lngLookat As Long = xlPart)
Dim Spalte As Long
Dim rngZelle As Range
With wks
If varSuch = "" Then Exit Sub
.Range(.Columns(Spalte_1), .Columns(Spalte_L)).Hidden = False
For Spalte = Spalte_L To Spalte_1 Step -1
Set rngZelle = .Columns(Spalte).Find(what:=varSuch, LookIn:=xlValues, _
lookat:=lngLookat, MatchCase:=False)
If rngZelle Is Nothing Then
.Columns(Spalte).Hidden = True
End If
Next
End With
End Sub

Anzeige
AW: Spalten ausblenden wenn Bedingung erfüllt
21.10.2019 13:30:39
Chris
Hallo Franz,
danke für die schnelle Antwort!
Soweit klappt alles. Danke dafür.
Besteht jetzt noch die Möglichkeit, dass ich bei Auswahl "Gesamt" wieder alle Spalten eingeblendet bekomme? :)
LG
Chris
AW: Spalten ausblenden wenn Bedingung erfüllt
21.10.2019 14:05:16
fcs
Hallo Chris,
dafür braucht es eine weitere Zeile mit Prüfung.
LG
Franz
'Makro in einem allgemeinen Modul oder im Code-Modul des Tabellenblatts mit dem Dropdown
Sub Spalten_ohne_Suchwort_ausblenden(ByVal varSuch As Variant, wks As Worksheet, _
ByVal Spalte_1 As Long, ByVal Spalte_L As Long, _
Optional ByVal lngLookat As Long = xlPart)
Dim Spalte As Long
Dim rngZelle As Range
With wks
If varSuch = "" Then Exit Sub
.Range(.Columns(Spalte_1), .Columns(Spalte_L)).Hidden = False
If varSuch = "Gesamt" Then Exit Sub    '#### neu
For Spalte = Spalte_L To Spalte_1 Step -1
Set rngZelle = .Columns(Spalte).Find(what:=varSuch, LookIn:=xlValues, _
lookat:=lngLookat, MatchCase:=False)
If rngZelle Is Nothing Then
.Columns(Spalte).Hidden = True
End If
Next
End With
End Sub

Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige