ich habe mir eine kleine Routine geschrieben, welche eine angewählte Zeile
nach unten verschiebt.
Ich denke mal das ganze müsste noch einfacher gehen, aber es funktioniert.
Allerdings möchte ich dass immer die Zelle angewählt bleibt, welche auch verschoben wird.
Das mache ich am Ende mit Cells(ActiveCell.Row - 1, 1).Select
Das geht jedoch nur, wenn ich vorher eine Zeitverzögrung von einer Sekunde einbaue ?
Kann mir einer erklären was da faul ist ?
Vielen Dank im Voraus
Private Sub SpinButton1_SpinDown()
If Cells(ActiveCell.Row, 1) = "" Then
MsgBox "Bitte zuerst einen ausgefüllte Zeile markieren", vbInformation, "Information"
Exit Sub
End If
Application.ScreenUpdating = False
'Unter der aktuellenZeile eine neue Zeile einfügen
Cells(ActiveCell.Row + 2, 1).Select
Selection.EntireRow.Insert
'Die Quellzeile in die neue leere Zeile einfügen
With Worksheets("Test")
.Range(.Cells(ActiveCell.Row - 2, 1), .Cells(ActiveCell.Row - 2, 2)). _
Copy Worksheets("Test").Cells(ActiveCell.Row, 1)
End With
'Die Quellzeile löschen
Cells(ActiveCell.Row - 2, 1).EntireRow.Delete Shift:=xlUp
Application.ScreenUpdating = True
Verzögerung (1)
Cells(ActiveCell.Row - 1, 1).Select
End Sub