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

Forumthread: Spalten dynamisch ausblenden

Spalten dynamisch ausblenden
21.12.2019 13:16:47
Thomas
Hallo!
Wir erstellen gerade einen neuen Online-Shop.
Die Artikel bekommen Warengruppen und Attribute (VIELE Attribute!!!)
Die Vorgabe der möglichen Attribute wurde definiert, nun muss am Artikel entsprechend unpassende Attribute gelöscht werden.
Da das bei 5000 Artikeln nur schwer lesbar sein wird, habe ich eine Matrix aus Artikel, Warengruppe und Attribut gemacht.
SUPER wäre nun, wenn der Mitarbeiter in Zeile 3 ist, das dann von Spalte H bis EG alle leeren Spalten ausgeblendet werden. geht er dann in Zeile 7 soll dann der Filter automatisch die nun leeren Spalten dieser Zeile ausblenden ...
https://www.herber.de/bbs/user/133904.xlsx
Ich finde leider keine Lösung, habt ihr eine für mich?
Danke Thomas
Anzeige

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Spalten dynamisch ausblenden
21.12.2019 13:26:12
Hajo_Zi
Hallo Thomas,
eine Spalte wird komplett ausgeblendet Z.B K da in Zeile 3 leer , aber in Zeile 4 steht was.
das geht nur über VBA.
das geht nicht, da eine XLSX Datei kein Makro enthalten kann.
Ich sehe keinen Grund eine Datei 2x zu speichern und den Code einzufügen.
Ich führe keine Liste unter welchem Dateinamen ich die Datei aus dem Forum gespeichert habe gespeichert habe.
Der Name steht ja im Beitrag.

Anzeige
AW: Spalten dynamisch ausblenden
21.12.2019 13:33:50
Thomas
Hallo!
... gegen VBA habe ich nichts, das kann auch gerne unter XLSM gespeichert werden.
Ginge das per VBA?
Gruß
Thomas
AW: Spalten dynamisch ausblenden
21.12.2019 13:34:51
Hajo_Zi
Hallo Thoimas,
das hatte ich ja schon geschrieben, das es geht.
Gruß Hajo
Anzeige
AW: Spalten dynamisch ausblenden
21.12.2019 13:38:20
Thomas
Hallo!
... gegen VBA habe ich nichts, das kann auch gerne unter XLSM gespeichert werden.
Ginge das per VBA?
Gruß
Thomas
AW: Spalten dynamisch ausblenden
21.12.2019 13:42:46
Hajo_Zi
Hallo Thomas,
ich bin dann raus, da meine Beiträge nicht komplett gelesen werden.
Das wird schon seinen Grund haben.
Gruß Hajo
Anzeige
AW: Spalten dynamisch ausblenden
21.12.2019 13:47:43
Thomas
... ich habe das schon gelesen, kann aber auf der Seite nichts finden ...
Gesucht nach: Spalte / ausblenden / dynamisch ... hier habe ich nichts gefunden.
Keine Ahnung wo ich das finden soll ...
AW: Spalten dynamisch ausblenden
21.12.2019 14:25:56
Günther
Der Foren-Narr hat gesprochen und du gehst ihm auch noch auf den Leim … :-(
Zugegeben, du wirst das Verhalten des bisher einzigen Antworters erst nach längerer Zeit richtig einschätzen können, denn ca. 90% seiner Beiträge sind sinnentleerte Textbausteine (wie auch in diesem Fall).
Ich würde an deiner Stelle an erster Stelle über eine PivotTabelle nachdenken, gepaart nit einem Datenschnitt. Und wenn du es per VBA lösen möchtest, dann solltest du etwas Eigenleistung einbringen und einfach einmal per Makro-Recorder deine Wunschvorstellung aufzeichnen. - Und wenn du dann den Code hier als <Code>-Text einstellst und eine eventuell korrigierte Version der (gestrafften) Daten als *.xlsx, dann werden gewiss einige Helfer mehr Aktivität zeigen.
Gruß
Günther
Anzeige
AW: Spalten dynamisch ausblenden
21.12.2019 14:36:58
Thomas
Danke für die Info, war länger nicht mehr hier und hab schon meinem Verstand gezweifelt :-)
Ich werde das mal über die Feiertage versuchen und dann entsprechend antworten ... DANKE!
AW: Spalten dynamisch ausblenden
24.12.2019 11:05:01
Werner
Hallo Thomas,
Attribute
da würde ich persönlich das Doppelklick-Event des Tabellenblattes verwenden und nicht den "einfachen Klick", das wäre dann das Change-Event, benutzen.
Bei meinem Code wird bei Doppelklick auf den jeweiligen Artikel in Spalte F die leeren Spalten der Attribute ausgeblendet. Bei Doppelklick auf die Zelle A1 werden alle Spalten wieder eingeblendet.
Der Code gehört ins Codemodul des Tabellenblattes "neue Warengruppe gefiltert".
Rechtsklick auf den Tabellenblattreiter - Code anzeigen - Code rechts ins Codefenster kopieren.
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim i As Long
Application.ScreenUpdating = False
If Target.Row > 2 And Target.Column = 6 Then
Cancel = True
Columns.Hidden = False
For i = 8 To 137
If Cells(Target.Row, i) = "" Then
Columns(i).Hidden = True
End If
Next i
ElseIf Target.Address(0, 0) = "A1" Then
Cancel = True
Columns.Hidden = False
End If
End Sub
Gruß Werner
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Spalten dynamisch ausblenden in Excel


Schritt-für-Schritt-Anleitung

Um in Excel Spalten dynamisch auszublenden, kannst Du VBA verwenden. Folge diesen Schritten:

  1. Öffne das Excel-Dokument: Stelle sicher, dass Du die Datei als XLSM speicherst, um Makros zu ermöglichen.

  2. Öffne den VBA-Editor: Drücke ALT + F11, um den VBA-Editor zu öffnen.

  3. Füge ein neues Modul hinzu: Klicke mit der rechten Maustaste auf dein Projekt im Projektfenster und wähle Einfügen -> Modul.

  4. Kopiere den folgenden Code in das Modul:

    Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
       Dim i As Long
       Application.ScreenUpdating = False
       If Target.Row > 2 And Target.Column = 6 Then
           Cancel = True
           Columns.Hidden = False
           For i = 8 To 137
               If Cells(Target.Row, i) = "" Then
                   Columns(i).Hidden = True
               End If
           Next i
       ElseIf Target.Address(0, 0) = "A1" Then
           Cancel = True
           Columns.Hidden = False
       End If
       Application.ScreenUpdating = True
    End Sub
  5. Speichere die Datei: Stelle sicher, dass Du die Datei als XLSM speicherst, um die VBA-Funktionalität zu erhalten.

  6. Teste den Code: Klicke im Excel auf die Zelle in Spalte F, um die leeren Spalten auszublenden, oder auf A1, um alle Spalten wieder einzublenden.


Häufige Fehler und Lösungen

  • Fehler: Spalten blieben sichtbar: Überprüfe, ob Du die Datei als XLSM gespeichert hast.
  • Fehler: Code funktioniert nicht: Stelle sicher, dass Du den Code im richtigen Tabellenblatt-Modul eingefügt hast.
  • Leere Spalten werden nicht ausgeblendet: Vergewissere Dich, dass die Bedingungen im Code korrekt sind und dass die zu überprüfenden Zellen tatsächlich leer sind.

Alternative Methoden

Falls Du nicht mit VBA arbeiten möchtest, kannst Du auch Pivot-Tabellen in Kombination mit einem Datenschnitt verwenden. Hier sind die Schritte:

  1. Erstelle eine Pivot-Tabelle aus deinen Daten.
  2. Füge einen Datenschnitt hinzu: Gehe zu Einfügen -> Datenschnitt, um Filter für deine Pivot-Tabelle zu erstellen.
  3. Wähle die gewünschten Attribute aus: Dadurch kannst Du die Anzeige von leeren Werten steuern.

Praktische Beispiele

Wenn Du beispielsweise eine Liste von Produkten mit verschiedenen Attributen hast, kannst Du mithilfe des oben genannten VBA-Codes alle leeren Spalten ausblenden, während Du durch die Artikel scrollst. Dies ist besonders nützlich, um den Überblick über große Datenmengen zu behalten.


Tipps für Profis

  • Nutze das Worksheet_Change-Ereignis, um die Anzeige dynamisch zu aktualisieren, wenn sich Daten ändern.
  • Experimentiere mit AutoFilter, um leere Zeilen oder Spalten effizient auszublenden.
  • Kombiniere die Nutzung von Datenschnitten mit VBA für eine noch dynamischere Steuerung.

FAQ: Häufige Fragen

1. Kann ich auch leere Zeilen ausblenden?
Ja, Du kannst einen ähnlichen VBA-Code verwenden, um leere Zeilen dynamisch auszublenden.

2. Funktioniert das in jeder Excel-Version?
Die VBA-Funktionalität ist in den meisten modernen Excel-Versionen (ab Excel 2007) verfügbar.

3. Wie kann ich einen Datenschnitt leer ausblenden?
Du kannst einen Datenschnitt verwenden, um nur die gewünschten Daten anzuzeigen, und leere Werte auszublenden, indem Du die Filteroptionen anpasst.

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