Live-Forum - Die aktuellen Beiträge
Datum
Titel
29.03.2024 13:14:12
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1648to1652
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

VBA: Laufzeitfehler 13 nur in Pers_Makros

VBA: Laufzeitfehler 13 nur in Pers_Makros
16.10.2018 08:37:20
Rob
Hallo zusammen,
wenn ich folgenden Code über ein Modul aus meiner "Persönlichen Makroarbeitsmappe" ausführe, erhalte ich den Laufzeitfehler 13 bei lenCell = Len(Cells(i, 72)). Allerdings tritt der Fehler komischer Weise nicht im Debug-Modus mit F8 auf - auch nicht, wenn ich den Code über ein Modul im Workbook ausführe!?!?
Ich habe mir jetzt damit beholfen, den Fehler mit "On Error Resume Next" zu umgehen - er führt _
auch alle anschließenden Befehle in der If-Schleife korrekt aus - allerdings ist das nicht die _ schickste Methode. Ich würde gerne verstehen warum:

Dim lastRow As Long
Dim i, lenCell As Integer
lastRow = Sheets(1).Cells(Rows.Count, 72).End(xlUp).Row
For i = 2 To lastRow
On Error Resume Next
lenCell = Len(Cells(i, 72))
If lenCell = 2 Then
Cells(i, 72) = Cells(i, 72) & "000"
ElseIf lenCell = 3 Then
Cells(i, 72) = Cells(i, 72) & "00"
ElseIf lenCell = 4 Then
Cells(i, 72) = Cells(i, 72) & "0"
End If
Next i
On Error GoTo 0

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA: Laufzeitfehler 13 nur in Pers_Makros
16.10.2018 08:48:31
ChrisL
Hi Rob
Vielleicht ein Referenzierungsproblem (einmal Sheets(1) und einmal ActiveSheet). Probiere mal...
Sub t()
Dim i As Long
Application.ScreenUpdating = False
With Sheets(1)
For i = 2 To .Cells(Rows.Count, 72).End(xlUp).Row
.Cells(i, 72) = .Cells(i, 72) & WorksheetFunction.Rept("0", 5 - Len(.Cells(i, 72)))
Next i
End With
End Sub
cu
Chris
AW: VBA: Laufzeitfehler 13 nur in Pers_Makros
16.10.2018 09:42:58
Rob
Die Referenzierung auf die Sheets habe ich auch schon probiert - hat leider nicht funktioniert.
Ich habe jetzt mal die Integer-Variablen unabhängig voneinander ausgewiesen. VBA hat anscheinend mit "Einzeilern" wie Dim i, lenCell as Integer von Zeit zu Zeit Interpretationsprobleme und jetzt läuft das Makro durch:
Dim i as Integer
Dim lenCell as Integer
PS: Das Witzige bei der Sache; ich habe es anschließend wieder auf eine Zeile umgeschrieben und es lief auch so problemlos durch. Muss man nicht verstehen...
Anzeige

146 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige