Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
Anzeige
Archiv - Navigation
1700to1704
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

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!


		

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
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

308 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige