Live-Forum - Die aktuellen Beiträge
Datum
Titel
16.10.2025 17:40:39
16.10.2025 17:25:38
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: VBA - Aktive Zeile als "Range" benutzen

VBA - Aktive Zeile als "Range" benutzen
18.06.2024 08:22:07
Vhorst
Hallo,
das ist mein erster Beitrag hier, also schon mal vielen Dank für Eure Unterstützung im Voraus. Meine VBA Kenntnisse sind eher rudimentär, also nicht allzu viel erwarten.
Ich habe eine Liste, bei der ich Spalten mit bestimmten Werten ausblenden möchte. Ich habe mir im Internet etwas zusammen gesucht, allerdings muss ich jetzt das Makro jedes Mal händisch anpassen, damit die richtige Zeile als "Range" durchsucht wird.


Sub HidexCols()
Dim cell As Range
For Each cell In ActiveWorkbook.ActiveSheet.Rows("4").Cells
If cell.Value = "x" Then
cell.EntireColumn.Hidden = True
ElseIf cell.Value = "-" Then
cell.EntireColumn.Hidden = True
End If
Next cell
End Sub


Gibt es eine Möglichkeit zu sagen, dass die aktive Zeile automatisch als "Range" ausgewählt wird? Ich möchte also die Liste normal filtern, dann die Zeile aktivieren und dann soll das Makro diese Zeile bearbeiten.

Vielen Dank
Vhorst
Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: VBA - Aktive Zeile als "Range" benutzen
18.06.2024 08:28:55
Oberschlumpf
Hi,

änder mal diesen Code...
For Each cell In ActiveWorkbook.ActiveSheet.Rows("4").Cells

...um in...
For Each cell In ActiveWorkbook.ActiveSheet.Rows(ActiveCell.Row).Cells

...hilfts?

Ciao
Thorsten
Anzeige
AW: VBA - Aktive Zeile als "Range" benutzen
18.06.2024 08:31:38
daniel
Hi

for each cell in ActiveCell.EntireRow.Cells


damit deine Schleife aber nicht über alle 16.384 Zellen läuft:

for each cell in Intersect(ActiveCell.EntireRow, ActiveSheet.Usedrange)


Gruß Daniel
Anzeige
AW: VBA - Aktive Zeile als "Range" benutzen
18.06.2024 08:57:08
Vhorst
Vielen Dank Euch Beiden,
es funktionieren beide Lösungen. Ich werde mit Daniels Lösung arbeiten, da sie in meinem Test eine messbare Zeiteinsparung mitbringt.

Schönen Gruß
Vhorst
AW: VBA - Aktive Zeile als "Range" benutzen
18.06.2024 09:50:46
GerdL
Moin
Dim C As Range


For Each C In Range(Cells(ActiveCell.Row, 1), _
Cells(ActiveCell.Row, Columns.Count).End(xlToLeft)).Cells

If C.Value = "x" Or C.Value = "-" Then
C.EntireColumn.Hidden = True
End If

Next

Gruß Gerd
Anzeige
;
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