Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
464to468
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
464to468
464to468
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Bitte CODE umschreiben

Bitte CODE umschreiben
08.08.2004 21:21:15
Lorenz
Hallo u Guten Abend!
Bitte statt "ActiveSheet.Name" Liste in Worksheets("INDEX").Range("A:A40")
In der Liste in Spalte A stehen die eingeblendeten Sheets

Sub BlattEndeHidden()
Dim wks As Worksheet
For Each wks In ThisWorkbook.Worksheets
If wks.Name <> ActiveSheet.Name Then
wks.Visible = xlVeryHidden
End If
Next wks
End Sub

Danke Lorenz

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

Betreff
Datum
Anwender
Anzeige
AW: Bitte CODE umschreiben
PeterW
Hallo Lorenz,
im Prinzip könnte das so gehen (musst den Bereich doch anpassen, A:A40, da fehlt wohl was):

Sub BlattEndeHidden()
Dim rng As Range
For Each rng In Worksheets("INDEX").Range("A1:A40")
Sheets(rng.Value).Visible = xlVeryHidden
Next
End Sub

Gruß
Peter
AW: Bitte CODE umschreiben
Lorenz
Hallo Peter!
Besten Dank!
Es funktioniert!
Ein kleiner Schönheitsfehler is doch drin! Und zwar:
wenn im Bereich von A1:A eine leere Zelle vorhanden Dann wills nicht!
Die Leere Zelle ergibt sich durch den CODE

Sub BlattEintragEnde()
Dim wks As Worksheet
Dim iRow As Integer
Worksheets("INDEX").Columns(1).ClearContents
iRow = Worksheets("INDEX").Cells(Rows.Count, 1).End(xlUp).Row + 1
For Each wks In Worksheets
If wks.Name <> "INDEX" And wks.Visible = xlSheetVisible Then
Worksheets("INDEX").Cells(iRow, 1).Value = wks.Name
iRow = iRow + 1
End If
Next wks
End Sub

Gruss Lorenz
Anzeige
AW: Bitte CODE umschreiben
PeterW
Hallo Lorenz,
warum ermittelst du, wenn die Werte in Spalte A gelöscht werden, die letzte Zeile der Spalte? Mit deinem Code wird bei leerer Spalte A der Wert 2 geliefert, die leere Zelle dürfte A1 sein. Versuch es mal so:

Sub BlattEintragEnde()
Dim wks As Worksheet
Dim iRow As Integer
Worksheets("INDEX").Columns(1).ClearContents
iRow = 1
For Each wks In Worksheets
If wks.Name <> "INDEX" And wks.Visible = xlSheetVisible Then
Worksheets("INDEX").Cells(iRow, 1).Value = wks.Name
iRow = iRow + 1
End If
Next wks
End Sub

Gruß
Peter
Anzeige
DANKE!!!!!!!!!!!!!
Lorenz
Hallo Peter!
Rat befolgt! alles Ok
funktioniert bestens!
Danke
Lorenz
Kern geschehn
WeterP
..

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige