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

Forumthread: For schleife immer Außerhalb Index

For schleife immer Außerhalb Index
06.09.2007 16:53:56
Corben
Hallo xl-Forum,
ich habe eine Arbeitsmappe mit 4 Blättern (durchnummeriert mit 1-4).
Nun wende ich folgden

Sub an


Sub löschen()
Dim e As Integer
Dim WB As Workbook
Set WB = ThisWorkbook
For e = 1 To WB.Sheets.Count
If WB.Sheets(e).Name = "3" = True Then
WB.Sheets(e).Delete
End If
Next
WB.Worksheets.Add before:=Worksheets(Worksheets.Count)
With ActiveSheet
.Name = "3"
End With
Dim DS As Worksheet
Set DS = WB.Sheets(Worksheets.Count)
End Sub


Wieso läuft die For schleife immer Außerhalb des Index (Zumindest bei mir)?
Ratlos!
Gibt es da ne Lösung oder mach ich was falsch?!
Gruß Corben

Anzeige

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: For schleife immer Außerhalb Index
06.09.2007 17:02:53
Reinhard
Hi Corben,
hab grad kein Excel hier, probiers mal so:

Sub löschen()
Dim e As Integer
Dim WB As Workbook
Set WB = ThisWorkbook
For e = 1 To WB.Sheets.Count
If WB.Sheets(e).Name = "3" Then
WB.Sheets(e).Delete
Exit For
End If
Next
WB.Worksheets.Add before:=Worksheets(Worksheets.Count)
With ActiveSheet
.Name = "3"
End With
Dim DS As Worksheet
Set DS = WB.Sheets(Worksheets.Count)
End Sub

Gruß
Reinhard

Anzeige
AW: For schleife immer Außerhalb Index
06.09.2007 17:09:29
Corben
Hi Reinhard,
AAhh - mit "Exit For" raus befor Sie ins nirwana läuft!
Danke Danke

AW: For schleife immer Außerhalb Index
06.09.2007 17:07:01
Sigi
Hi Corben,
WB.Sheets.Count ist am Anfang 4, doch dann löscht du die Tabelle "3"; dadurch sinds nur noch 3. Die Schleife läuft aber bis 4 (Anfangswert) und ist dann auf einen Fehler, weil es keine 4 Sheets mehr gibt.
Gruß
Sigi

Anzeige
AW: For schleife immer Außerhalb Index
06.09.2007 17:11:45
Corben
Hi Sigi,
aber so:
For e = 1 To WB.Sheets.Count
If WB.Sheets(e).Name = "3" = True Then
WB.Sheets(e).Delete
e=e-1
End If
Next
läuft Sie auch auf übern Index!
Gruß Gorben

AW: For schleife immer Außerhalb Index
06.09.2007 17:14:18
Sigi
Hi Corben,
hier ist es günstiger eine for ... each ... Schleife zu nehmen ...

Sub löschen()
Dim SH As Object
For Each SH In ThisWorkbook.Sheets
If SH.Name = "3" Then
SH.Delete
End If
Next SH
End Sub


Gruß
Sigi

Anzeige
AW: For schleife immer Außerhalb Index
06.09.2007 17:18:37
Corben
Hi Sigi,
auch nicht schlecht - Danke!
;

Forumthreads zu verwandten Themen

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