Hi Angelina,
(07.03.2015, 16:15)Angelina schrieb: habe ich natürlich versucht - jedoch wird alles nur eine Zeile nach unten verschoben - mehr nicht!
wenn der Code g'scheit eingerückt wird, dann sieht man, daß insgesamt und genau dort ein "Next" zuviel ist, wo zwei direkt untereinander stehen (wo jetzt die Leerzeile ist).
Das hilfreiche Einrücken kann auch ein Anfänger wie Du machen. Immer alles innerhalb For - Next oder If - EndIf nach rechts einrücken. Dann ist auch ganz einfach erkennbar, welches Next zu welchem For gehört, usw.
Mit dem unter der dicken Linie klickbaren Tool (
VBA/HTML - CodeConverter für Office-Foren) kann sowohl die Darstellung, als auch die Einrückung automatisch auf Knopfdruck erledigt werden.
Hier der Code von Edgar noch mal (jetzt eingerückt):
Option Explicit
Private Sub CommandButton1_Click()
Dim rng As Range
Dim loZeile As Long
Dim loSpalte As Long
Dim loZeile2 As Long
Dim loZiel As Long
Dim loCo As Long
Dim loLetzte As Long
Dim loEnd As Long
Dim arrFeld
For loCo = 65535 To 1 Step -1
If Application.WorksheetFunction.Count(Range("DW" & loCo & ":FS" & loCo)) > 0 Then
loLetzte = loCo
Exit For
End If
Next
loZiel = loLetzte + 2
Application.ScreenUpdating = False
Set rng = Range("DW1")
For loZeile = 0 To loLetzte - 1
For loSpalte = 0 To 48
If rng.Offset(loZeile, loSpalte) <> "" Then
If Application.WorksheetFunction.CountIf(Range(rng.Offset(loZeile + 1, 0), rng.Offset(loZeile + 1, 48)), rng.Offset(loZeile, loSpalte)) > 0 Then rng.Offset(loZiel, loSpalte) = rng.Offset(loZeile, loSpalte)
End If
Next
loZiel = loZiel + 1
Next
For loCo = 100 To 1 Step -1
If Application.WorksheetFunction.Count(Range("DW" & loCo & ":FS" & loCo)) > 0 Then
loEnd = loCo
Exit For
End If
Next
loCo = loEnd - loLetzte - 2
arrFeld = Range("DW" & loLetzte + 3 & ":FS" & loEnd)
Range("DW" & loLetzte & ":FS" & loEnd).ClearContents
Range("DW1:FS" & loCo) = arrFeld
Application.ScreenUpdating = True
End Sub
VBA/HTML - CodeConverter für Office-Foren, AddIn für Excel/Word 2000-2013 - komplett in VBA geschrieben von Lukas Mosimann. Projektbetreuung durch mumpel
Code erstellt und getestet in Office 14