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

Forumthread: Ausgewählte Sheets mit einem VBA Code ansprechen

Ausgewählte Sheets mit einem VBA Code ansprechen
15.07.2019 15:56:04
Benedikt
Guten Tag liebe Community,
ich suche nach einer Möglichkeit, diesen VBA Code auf mehreren Tabellenblättern anzusprechen. _ Ausgeführt werden soll er auf Tabellenblatt 2 und betreffen soll er Tabellenblätter 3 bis 12. Es geht lediglich darum das ich nicht bei jedem Blatt einzeln den Code ausführen muss. Nur komme ich von selbst leider nicht drauf, wie ich den Code modifizieren muss... Das hier ist der Code:

Sub Aktualisieren()
ActiveSheet.Unprotect "TW520"
Dim xRg As Range
Application.ScreenUpdating = False
For Each xRg In Range("A6:A1000") 'I Range kann beliebig angepasst werden. A6 muss fest  _
_
_
bleiben. Achten Sie aber darauf, dass eine erhöhte Range zu einer längeren Suchlaufzeit führt.
If xRg.Value = "" Then
xRg.EntireRow.Hidden = True
Else
xRg.EntireRow.Hidden = False
End If
Next xRg
Application.ScreenUpdating = True
ActiveSheet.Protect "TW520", AllowFiltering:=True
End Sub
Vielen Dank Im Voraus!


		
Anzeige

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Ausgewählte Sheets mit einem VBA Code ansprechen
15.07.2019 16:06:11
Regina
Moin,
wenn die tabellenblätter ihre Position nicht verändern, sollte das so gehen:
Sub Aktualisieren()
Dim wks As Worksheet
Dim lng_zaehler As Long
For lng_zaehler = 3 To 12
Worksheets(lng_zaehler).Unprotect "TW520"
Dim xRg As Range
Application.ScreenUpdating = False
For Each xRg In Worksheets(lng_zaehler).Range("A6:A1000") 'I Range kann beliebig  _
angepasst werden. A6 muss fest _
_
_
bleiben. Achten Sie aber darauf, dass eine erhöhte Range zu einer längeren Suchlaufzeit fü _
hrt.
If xRg.Value = "" Then
xRg.EntireRow.Hidden = True
Else
xRg.EntireRow.Hidden = False
End If
Next xRg
Application.ScreenUpdating = True
Worksheets(lng_zaehler).Protect "TW520", AllowFiltering:=True
Next
End Sub

Gruß
Regina
Anzeige
AW: Ausgew. Sheets mit einem VBA Code ansprechen
15.07.2019 16:25:27
Benedikt
Super, klappt wie gewünscht.
Vielen lieben Dank Regina :-)
Ausgewählte Sheets mit einem VBA Code ansprechen
15.07.2019 16:27:32
Rudi
Hallo,
falls die Zellen wirklich leer sind, geht's auch ohne Schleife über die Zellen.
Sub Aktualisieren()
Dim lng_zaehler As Long
Const strPW As String = "TW520"
For lng_zaehler = 3 To 12
With Worksheets(lng_zaehler)
.Unprotect strPW
.Rows.Hidden = False
On Error Resume Next
.Columns(1).SpecialCells(xlCellTypeBlanks).EntireRow.Hidden = True
On Error GoTo 0
.Protect strPW, AllowFiltering:=True
End With
Next lng_zaehler
End Sub

Gruß
Rudi
Anzeige
Ausgewählte Sheets mit einem VBA Code ansprechen
15.07.2019 16:27:34
Rudi
Hallo,
falls die Zellen wirklich leer sind, geht's auch ohne Schleife über die Zellen.
Sub Aktualisieren()
Dim lng_zaehler As Long
Const strPW As String = "TW520"
For lng_zaehler = 3 To 12
With Worksheets(lng_zaehler)
.Unprotect strPW
.Rows.Hidden = False
On Error Resume Next
.Columns(1).SpecialCells(xlCellTypeBlanks).EntireRow.Hidden = True
On Error GoTo 0
.Protect strPW, AllowFiltering:=True
End With
Next lng_zaehler
End Sub

Gruß
Rudi
Anzeige
AW: Ausgewählte Sheets mit einem VBA Code ansprechen
15.07.2019 16:40:11
onur
Das hier müsste völlig reichen:
Sub Aktualisieren()
Dim Arr, i, z
Application.ScreenUpdating = False
Arr = Array("Tabelle1", "Tabelle2", "Tabelle3")'Hier alle Blattnamen auflisten
For i = 0 To UBound(Arr)
With Sheets(Arr(i))
.Unprotect "TW520"
For z = 6 To 1000
.Rows(z).EntireRow.Hidden = .Cells(z, 1) = ""
Next z
.Protect "TW520", AllowFiltering:=True
End With
Next i
Application.ScreenUpdating = True
End Sub

Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
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