Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Anzeige
Inhaltsverzeichnis

Makro Ecxel

Forumthread: Makro Ecxel

Makro Ecxel
05.01.2025 11:09:14
Karolin
Hallo, ich benötige sehr viel Hilfe bei den Thema Makro´s.
Ich habe zwei Tabellen: In Tabelle eins werden Daten eingetragen. Von diesen Tabellen gibt es einige. Tabelle 2 ist die zusammen Fassung und baut auf Tabelle 1. Die bezieht ihr Daten aus Tabelle 1 automatisch. Ich möchte Tabelle 2 etwas übersichtlicher haben. Und dachte mir, wenn ich da ein Makro hinterlege, der alle Spalten, wo die Summe 0 beträgt, löscht dann kann ich damit arbeiten. Habe mich auch schon damit etwas beschäftigt, aber krieg es trotzdem nicht hin. Vielleicht hat jemand auch eine andere Idee, wie ich das schnell und automatisch ablaufend hinbekomme. Ohne dass ich jedes Mal die leeren Spalten händisch ausblende oder lösche.

Ziel: Alle Spalten wo die Summe 0 ist Löschen.
Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: Makro Ecxel
05.01.2025 11:13:42
RPP63
Moin!
Warum filterst Du nicht einfach die 0-Zellen weg?

Gruß Ralf
AW: Makro Ecxel
05.01.2025 11:47:19
GerdL
Guten Morgen Karolin!
Sub Unit()


Dim Spalte As Long

For Spalte = 5 To 1 Step -1 'Spalten E bis A
If Application.Sum(Worksheets("Tabelle2").Columns(Spalte)) = 0 Then

Worksheets("Tabelle2").Columns(Spalte).Delete 'löschen
'Worksheets("Tabelle2").Columns(Spalte).Hidden = True 'ausblenden
End If
Next

End Sub

Gruß Gerd
Anzeige
AW: Makro Ecxel
05.01.2025 11:51:37
RPP63
Oops!
Falsch gelesen!
Bei Spalten klappt natürlich der Filter nicht …
AW: Makro Ecxel
05.01.2025 13:03:36
Piet
Hallo

ein schönes Programm vom Kollege GerdL. - Das war auch meine Idee, mit einer kleinen Verbesserung.
Wenn du mit LSp arbeitest bist von von der Anzahl der Spalten unabgängig. Der Code findet ALLE Spalten!

VBA Hinweis: - ob Spalten oder Zeilen, das löschen muss IMMER rückwärts erfolgen, sonst gibt es "Lösch Salat"
Deshalb For Next = 5 to 1 Step -1. - Beim Vorwärts löschen huddelt der Code, weil er Spalten überspringt!

mfg Piet

Sub Units()

Dim Spalte As Long, Lsp As Long
Lsp = Worksheets("Tabelle2").UsedRange.Columns.Count

For Spalte = Lsp To 1 Step -1 'Spalten E bis A
Anzeige

Forumthreads zu verwandten Themen