Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1516to1520
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

SheetsArray

SheetsArray
07.10.2016 14:58:31
Paddy
Hallo liebe Wissende,
ich versuche gerade, über ein dynamisches Array diverse Tabellenblätter einzublenden bzw. auszuwählen. Leider bekomme ich immer wieder einen Laufzeitfehler.
In der Tabelle Config stehen (zuvor über Userform eingetragene) Namen der Tabellenblätter (B4 abwärts).
With Sheets("config")
zelle = .Range("B65536").End(xlUp).Row
arr = .Range("B4:B" & zelle).Value
str1 = zelle - 3
For i = 1 To str1
ReDim SheetsArray(i To str1) As String
SheetsArray(i) = .Range("B" & zelle).Value
Debug.Print SheetsArray(i)
zelle = zelle - 1
Next i
Sheets(SheetsArray).Select
End With

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: SheetsArray
07.10.2016 15:36:10
Paddy
Der Laufzeitfehler ist ohne mein Zutun verschwunden. Jedoch selektiert er im o.a. Beispiel nur das letzte Tabellenblatt aus dem Array == ?
AW: SheetsArray
07.10.2016 15:42:07
Daniel
Hi
das Problem ist dein ReDim.
bei einem normalen Redim werden die vorhandenen Array-Werte gelöscht!
Ausserdem dein Wert für die untere Grenze des Arrays der Schleifenzähler!
das hat zur folge dass nach dem letzen Schleifenumlauf dein Array nur noch ein Element enthält, nämlich das des letzen Umlaufs.
das ReDim muss vor der Schleife erfolgen und der untere Grenze muss = 1 sein (Startwert der Schleife)
Redim SheetsArray(1 to str1)
For i = 1 to str1
SheetsArray(i) = ....

Gruß Daniel
Anzeige
AW: SheetsArray
07.10.2016 16:15:16
Paddy
Servus Daniel !
Perfekt - hat geklappt.
nächstes mal frage ich gleich dich !

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige