Live-Forum - Die aktuellen Beiträge
Datum
Titel
29.03.2024 13:14:12
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1476to1480
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
Inhaltsverzeichnis

Spalten über mehrere Tabellen ausblenden

Spalten über mehrere Tabellen ausblenden
19.02.2016 21:03:52
Oliver
Einen wunderschönen guten Abend zusammen,
ich suche ein Makro für folgendes Vorhaben:
Ich möchte gerne über alle Tabellen einer Arbeitsmappe die Spalten ausblenden, die ein x haben, wenn die Bedingung wahr ist, sonst "", dann einblenden. Die Zuweisung x oder "" erfolgt dabei via Formel.
Konkret wähle ich z. B. den Stand Vorschau 1 aus. Daraufhin erhalten alle Spalten (in allen Tabellen), die ungleich Vorschau 1 sind, ein x -> in der ersten Zeile und in den entsprechenden Spalten, die die Bedingung nicht erfüllen (= ausblenden).
Ich habe auch hier schon im Forum gestöbert und sehr gute Ansätze gefunden, allerdings oft nur bezogen auf ein konkretes Tabellenblatt, in dem etwas ausgeblendet bzw. eingeblendet werden soll.
Ich suche nach der globalgalaktischen Schleife über alle Tabellenblätter und bedanke mich jetzt schon für alle helfenden Hände
Viele Grüße Oliver

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Spalten über mehrere Tabellen ausblenden
19.02.2016 21:49:21
Michael
Hallo,
Direkt kann ich die Frage nicht beantworten, da nicht gesagt wurde in welchen Zellen das "x" steht.
Aber Schleifen über alle sheets gehen z. B. so:
Dim ws as worksheet
For each ws in thisworkbook.sheets
... code
Next ws
Oder:
Wscount = thisworkbook.sheets.count
Dann eine Schleife mit for i = 1 to wscount
Vielleicht hat es geholfen
Mfg

AW: Spalten über mehrere Tabellen ausblenden
20.02.2016 10:09:29
Oliver
Hallo Michael,
vielen Dank für Deine Antwort! Das x steht variabel in einem Bereich zwischen der 4. und 60. Spalte -> jeweils in Zelle 1.
Nachfolgenden Code habe ich hier im Forum gefunden, der perfekt für eine Tabelle funktioniert. Diesen würde ich gerne so erweitern, dass er alle Tabellen durchläuft:
Sub ausblenden()
Dim i%, Ab%, Bis%, Was$
Ab = 4: Bis = 60 \'Spaltenbereich
Was = \"x\"
\'Application.ScreenUpdating = False
With ActiveSheet
.Range(Columns(Ab), Columns(Bis)).EntireColumn.Hidden = False \'zurücksetzen
For i = Ab To Bis
If .Cells(1, i) = Was Then
.Columns(i).EntireColumn.Hidden = True
End If
Next i
End With
End Sub

Anzeige
AW: Spalten über mehrere Tabellen ausblenden
20.02.2016 10:29:06
Gerd
Hallo Oliver,
was ist schon perfekt? Teste mal:
Sub ausblenden()
Dim i%, Ab%, Bis%, Was$
Dim WS As Worksheet
Ab = 4: Bis = 60 '\'Spaltenbereich
Was = "x"
'Application.ScreenUpdating = False
For Each WS In ActiveWorkbook.Worksheets
With WS
.Range(.Columns(Ab), .Columns(Bis)).EntireColumn.Hidden = False '\'zurücksetzen
For i = Ab To Bis
If .Cells(1, i) = Was Then
.Columns(i).EntireColumn.Hidden = True
End If
Next i
End With
Next
End Sub

Gruß Gerd

AW: Spalten über mehrere Tabellen ausblenden
20.02.2016 17:07:12
Oliver
Hallo Gerd,
Du hast natürlich recht (was ist schon perfekt?). Ich streiche das mal eben aus meinem Wortschatz und formuliere das mal eben anders:
Dein Code funktioniert fehlerfrei und erfüllt genau das, nach was ich gesucht habe. Herzlichen Dank dafür!
Anzeige

307 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige