Ich wollte eine Zeile in Excel VBA hinzufügen, wenn immer der Wert in Spalte A 1 ist, hier ist der Code, den ich schrieb, aber das gibt ein " Index außerhalb des Bereichs Fehler ". Was mache ich falsch?Excel VBA Macro zum Hinzufügen einer leeren Zeile, wenn der Wert in Spalte A ist 1
Sub InsertRow()
Dim Col As Variant
Dim BlankRows As Long
Dim LastRow As Long
Dim R As Long
Dim StartRow As Long
Application.ScreenUpdating = False
Col = "A"
StartRow = 1
LastRow = 20
Worksheets("Sheet1").Activate
For R = StartRow To LastRow
If Cells(R, Col) = 1 Then
Cells(R, Col).EntireRow.Insert Shift:=xlDown
End If
Next R
Application.ScreenUpdating = True
End Sub
werden Sie die leere Zeile nach der einen mit 1 hinzufügen? – SEarle1986
Das ** sollte nicht ** einen "Index außerhalb des Bereichs" Fehler geben, aber es wird auch nicht tun, was Sie wollen. (Wahrscheinlich möchten Sie 'For R = LastRow zu StartRow Step -1' und möglicherweise' Cells (R + 1, Col) .EntireRow.Insert Shift: = xlDown') – YowE3K
Welche Zeile gibt den "Index außerhalb des Bereichs" -Fehler? Ich nahm an, dass es etwas mit der Schleife zu tun hat - aber ist es tatsächlich auf Ihren 'Arbeitsblättern (" Sheet1 "). Activate' Statement? Das würde bedeuten, dass Sie kein Blatt namens "Sheet1" haben. – YowE3K