Guten Morgen,
da ich hier schon viel Hilfe bekommen habe versuche ich es wieder hier =).
Folgendes Problem - Ich habe einen Button mit welchem ich Zeilen/Zeilenböcke verschieben kann. Das funktioniert auch soweit das Ganze.
Leider funktioniert das aber nur nach oben mit dem verschieben und nicht nach unten, das bedeutet wenn ich von Zeile 2 in 1 verschieben will funktioniert das aber noch von 2 nach 3
Hier der Code:
Private Sub CommandButton4_Click()
Dim OldRow As Variant, Indx As Integer
Dim OldRow1, RowCnt, Zeile As Variant
On Error GoTo 0
For Each Blatt In ActiveWorkbook.Sheets
Blatt.Unprotect ("KdoSAN")
Next
Indx = ActiveSheet.Index 'ActiveSheet Index merken
OldRow = Selection.Address(0) 'ausgewählte Zeilen Adresse (mit ":")
RowCnt = Selection.Rows.Count 'Anzahl Zeilen
Selection.Select
If InStr(OldRow, ":") = 0 Then MsgBox "Keine ganze Zeile ausgewählt" & vbLf & "Zeile zuerst bitte selektieren": Exit Sub
Zeile = Application.InputBox("in welche Zeile verschieben?", "Zeile " & OldRow & " verschieben", Type:=1)
If Zeile = Empty Then Exit Sub
On Error GoTo Fehler
Application.ScreenUpdating = False
Application.EnableEvents = False
'Zeilenkorrektur verursacht durch Cut!
OldRow1 = Left(OldRow, InStr(OldRow, ":") - 1)
If Zeile > OldRow1 Then Zeile = Zeile + RowCnt + 1
For i = ActiveSheet.Index To Worksheets.Count
With Worksheets(i)
.Select
.Rows(OldRow).Cut
.Rows(Zeile).Insert shift:=xlDown
End With
Next
Fehler: 'und Makro Ende
Worksheets(Indx).Select
Application.EnableEvents = True
If Err > 0 Then MsgBox "unerwarteter Fehler" & vbLf & Error()
End Sub
Ich hoffe ihr könnt mir weiterhelfen =)
MfG
|