Microsoft Excel

Herbers Excel/VBA-Archiv

Spalten nach Bedingung ausblenden

Betrifft: Spalten nach Bedingung ausblenden von: Andy
Geschrieben am: 21.08.2004 12:59:20

Hallo,

ich habe folgendes Problem:

ich habe ein Tabellenblatt in dem ich gerne in Zelle B1 auswählen möchte, welcher Spaltenbereich angezeigt werden soll. In Zelle B1 steht zur Auswahl der Bereich A bis D. Entsprechend habe ich rechts neben dem Auswahlmenü je 10 Spalten mit A, B, C und D als Überschrift beschriftet. Nun soll, wenn in B1 A steht nur die Spalten des Bereich A angezeigt werden (D-M) und alle anderen Spalten N bis AQ solen ausgeblendet werden. Entsprechend soll das ganze auch mit den anderen Bereichen funktionieren: wenn B, dann A,C,D ausgeblendet usw.

Zur Übersicht habe ich eine Tabelle erstellt:
https://www.herber.de/bbs/user/9907.xls

Kann mir jemand weiterhelefn, wie ich das realisieren kann?

Gruß
Andy

  


Betrifft: AW: Spalten nach Bedingung ausblenden von: Boris
Geschrieben am: 21.08.2004 13:36:51

Hi Andy,

folgenden Code in das Codemodul "Tabelle1":

Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)
Dim C As Range
If Target.Address(0, 0) = "B1" Then
    For Each C In Range("D1:AQ1")
        C.EntireColumn.Hidden = C <> Target
    Next
End If
End Sub


Kleiner Hinweis:
Unter xl97 wird mein Vorschlag nicht funktionieren, da in der gegebenen Datei das Worksheet-Change-Ereignis nicht über das Gültigkeitsdropdown ausgelöst wird (klassischer BUG).
Falls du die Anwendung mit xl97 ausschließend kannst - alles o.k.
Falls nicht:
Hinterlege in der Gültigkeitsliste unter "Zulassen - Liste" die Einträge DIREKT - getrennt mit Semikolon (A;B;C;D) - und nicht mit Bezug auf einen Tabellenbereich.
Dann wiederum wird auch bei xl97 das Change-Ereignis ausgelöst (warum auch immer).

Grüße Boris


  


Betrifft: Danke! von: Andy
Geschrieben am: 21.08.2004 13:42:50

Danke Boris,

das funktioniert hervorragend!

Gruß
Andy


 

Beiträge aus den Excel-Beispielen zum Thema "Spalten nach Bedingung ausblenden"