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

Laufzeitfehler 9 bei Array Select

Forumthread: Laufzeitfehler 9 bei Array Select

Laufzeitfehler 9 bei Array Select
21.03.2018 11:19:43
Erwin
Hi,
zum Gruppieren von Excel-Tabellenblättern habe ich folgenden Code geschrieben:
Sub Gruppierung_K()
Dim Liste As Variant
Dim ListeKompl As Variant
Dim ListeArr()
ListeArr = Array()
Dim TabName As String
Dim m As Integer
Dim Zaehler As Integer
For m = 1 To Worksheets.Count
TabName = Worksheets(m).Name
TabName = Right(TabName, 2)
If TabName Like " K" Then
Liste = Worksheets(m).Name
ListeKompl = ListeKompl & Chr(34) & Liste & Chr(34) & ", "
Zaehler = Zaehler + 1
End If
Next m
ListeKompl = Left(ListeKompl, Len(ListeKompl) - 2)
ListeArr = Array(ListeKompl)
Sheets(ListeArr).Select
End Sub
Die letzte Zeile Sheets(ListeArr).Select führt zum Laufzeitfehler 9.
Wenn ich Select mit dem Inhalt der Variablen ListeKompl ausführe funzt es.
Wie komme ich weiter?
Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: Laufzeitfehler 9 bei Array Select
21.03.2018 11:29:18
ChrisL
Hi Erwin
So?
Sub t()
Dim ws As Worksheet, i As Integer
For Each ws In ThisWorkbook.Worksheets
If Right(ws.Name, 2) Like " K" Then
If i = 0 Then
ReDim ar(0)
Else
ReDim Preserve ar(i)
End If
ar(i) = ws.Name
i = i + 1
End If
Next ws
Sheets(ar).Select
End Sub
cu
Chris
Anzeige
AW: Laufzeitfehler 9 bei Array Select
21.03.2018 11:38:01
Daniel
Hi
da erzeugt du aber nicht das gewünschte Array.
du meinst wahrscheinlich:
ListeArr = Split(ListeKompl, ", ")
Wobei ich hier die Selektion der Blätter direkt in der Schleife machen würde.
hierzu setzt man beim Selektieren den zweiten Parameter = FALSE
dann wird das neu selektierte Blatt der bestehenden Blattselektion hinzugefügt.
das ganze lässt sich damit etwas kürzer gestalten:
Sub Gruppierung_K()
Dim SelArt As Boolean
Dim m As Integer
Dim Zaehler As Integer
SelArt = True
For m = 1 To Worksheets.Count
If Worksheets(m).Name Like "* K" Then
Worksheets(m).Select SelArt
SelArt = False
Zaehler = Zaehler + 1
End If
Next m
End Sub
Gruß Daniel
Anzeige
AW: Laufzeitfehler 9 bei Array Select
21.03.2018 11:53:32
Erwin
Super Jungs,
jetzt weiß ich was falsch war und wie es vieeel einfacher geht.
Danke!!!:-)
Mfg Erwin
;

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