VisualBasic VBA/Excel 2003 - Problem mit Worksheets/Range in Schleife

KeepXtreme

Lt. Commander
Registriert
Sep. 2008
Beiträge
1.402
ich hab ein Problem mit VBA an dme ich schon den ganzen Morgen rumbastel:

der untenstehende Code funktioniert, allerdings nur im ersten Schleifendurchlauf. Beim 2. Durchlauf krieg ich immer ein Laufzeitfehler '9': Index außerhalb des gültigen Bereichs - und hab keine Ahnung wieso..?

kann mir jmd. helfen?
Code:
Private Const cellsAllowModifiy As String = "Tabelle1!C11, Tabelle1!D13, Tabelle1!E15:F16"

Private Sub cellStatus()
        Dim data() As String
        data = Split(cellsAllowModifiy, ",")
        Dim entry() As String
        Dim size As Long
        size = UBound(data)
        Dim i As Integer
        For i = 0 To size Step 1
            entry = Split(data(i), "!", 2)
            ThisWorkbook.Worksheets(entry(0)).Range(entry(1)).Value = "test" 'Verursacht ab dem 2 Durchlauf einen Fehler'
        Next
End Sub
 
Ich könnte mir vorstellen das die Leerzeichen schuld sind - habs aber nicht genauer untersucht.
 
Nach deinem Split von cellsAllowModifiy befindet sich ein Leerzeichen vor dem zweiten und dritten Tabellennamen und "Tabelle1" und " Tabelle1" sind zwei unterschiedliche Werte.
Entweder du löschst die Leerzeichen in der Deklaration raus oder du machst ein Trim() um den Wert wenn du ihn verwendest.
 

Ähnliche Themen

Zurück
Oben