Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
476to480
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
476to480
476to480
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Arbeitsblattauswahl mit Kriterium

Arbeitsblattauswahl mit Kriterium
31.08.2004 09:13:23
Conrad
hallo leute,
weiter unten im forum folgenden code gefunden

Sub Inhalt_der_Mappe()
Dim i As Integer
Sheets("Inhalt").Select
For i = 1 To Sheets.Count
Cells(i, 1).Value = Sheets(i).Name
Next
End Sub

damit werden alle Tabellenblätter der aktiven Mappe innerhalb des Tabellenblattes Inhalt angezeigt.
Kann man dies noch mit eibnem bestimmten Kriterium koppeln, z.B. das nur diese Tabellenblätter gelistet werden, denen einen C vorangestellt ist, also z.-B. C.I.1.?
mit Grüssen aus Leipzig
Conrad

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

Betreff
Datum
Anwender
Anzeige
AW: Arbeitsblattauswahl mit Kriterium
y
hi Conrad,
so in etwa:

Sub Inhalt_der_Mappe()
Dim i As Integer
For i = 1 To Sheets.Count
If Left(Sheets(i).Name, 1) = "C" Then Sheets("Inhalt").Cells(i, 1).Value = Sheets(i).Name
Next
End Sub

cu Micha
Da bleiben aber im Zweifel Lücken in Spalte A
Boris
Hi Micha,
...daher würd ich es so machen:
Option Explicit

Sub alle_mit_c()
Dim Ws As Worksheet
Dim i As Integer
i = 1
With Worksheets("Inhalt")
For Each Ws In ThisWorkbook.Worksheets
If Ws.Name Like "C*" Then
.Cells(i, 1) = Ws.Name
i = i + 1
End If
Next Ws
End With
End Sub

Grüße Boris
Anzeige
AW: Da bleiben aber im Zweifel Lücken in Spalte A
ypsilon
hi Boris,
da die namen dann unsortiert vorliegen ging ich davon aus, dass sowieso eine sortierroutine rüberlaufen muss
cu Micha
AW: Arbeitsblattauswahl mit Kriterium
:

Sub Inhalt_der_Mappe()
Dim i As Integer, n As Integer
n = 1
Sheets("Inhalt").Select
For i = 1 To Sheets.Count
If UCase(Left(Sheets(i).Name, 1)) = "C" Then
Cells(n, 1).Value = Sheets(i).Name
n = n + 1
End If
Next
End Sub

Dank an das super Forum :-)
Conne

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige