Zeilen löschen wenn im Bereich einer Spalte leere Zellen sind, mit vba
hallo allerseits
da mir google und die sufu nicht weiter helfen konnten, hoffe ich dass ihr das könnt
ich habe folgende tabelle
die mit den werten aus dieser gefüllt wird
in der generierten tabelle sollen nun aber die zeilen bzw alle werte aus der zeile gelöscht werden,
bei denen in der spalte Y (zusammenfassung)von Y12 bis Y39 nichts steht, Y darf aber nicht gelöscht werden
und es soll dann zusammengerückt werden, also damit zwischendrin keine
leeren zeilen sind.
ich habe folgenden code zur übertragung:
folgendes habe ich bereits versucht, hat aber nicht funktioniert
vielen dank schon mal im voraus!
da mir google und die sufu nicht weiter helfen konnten, hoffe ich dass ihr das könnt
ich habe folgende tabelle
die mit den werten aus dieser gefüllt wird
in der generierten tabelle sollen nun aber die zeilen bzw alle werte aus der zeile gelöscht werden,
bei denen in der spalte Y (zusammenfassung)von Y12 bis Y39 nichts steht, Y darf aber nicht gelöscht werden
und es soll dann zusammengerückt werden, also damit zwischendrin keine
leeren zeilen sind.
ich habe folgenden code zur übertragung:
'Löschen der alten Projektstunden
Worksheets(1).Range(Cells(12, 1), Cells(39, 22)).Select
Selection.ClearContents
For j = 0 To 27
If Len(Worksheets(ws).Cells(12 + j, 1).Value) <> 0 Then
projektstunden_vorhanden = False
For i = 0 To 6 'Tage der Woche ; 0 = Montag
If Len(Worksheets(ws).Cells(12 + j, 3 + i + ((w - 1) * 8)).Value) <> 0 Then
projektstunden_vorhanden = True
End If
Next i
If projektstunden_vorhanden = True Then
LastRow_projektstunden = 11
For l = 12 To 39
If Len(Worksheets(1).Cells(l, 1).Value) <> 0 Then
LastRow_projektstunden = l
End If
Next l
Worksheets(1).Cells(LastRow_projektstunden + 1, 1).Value = Worksheets(ws).Cells(12 + j, 1).Value
Worksheets(1).Cells(LastRow_projektstunden + 1, 2).Value = Worksheets(ws).Cells(12 + j, 2).Value
Worksheets(1).Cells(LastRow_projektstunden + 1, 3).Value = Worksheets(ws).Cells(12 + j, 3).Value
For i = 0 To 6 'Tage der Woche ; 0 = Montag
Worksheets(1).Cells(LastRow_projektstunden + 1, 4 + (3 * i)).Value = Worksheets(ws).Cells(12 + j, 5 + i + ((w - 1) * 8)).Value
Next i
End If
End If
Worksheets(1).Cells(12 + j, 3 + (3 * i)).Interior.Color = Worksheets(ws).Cells(12 + j, 4 + i + ((w - 1) * 8)).Interior.Color
Worksheets(1).Cells(12 + j, 3 + (3 * i)).Interior.Pattern = Worksheets(ws).Cells(12 + j, 4 + i + ((w - 1) * 8)).Interior.Pattern
Next j
folgendes habe ich bereits versucht, hat aber nicht funktioniert
Worksheets(1).Range("Y12:Y39").SpecialCells(xlCellTypeBlanks).EntireRow.Delete
vielen dank schon mal im voraus!
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 103187
Url: https://administrator.de/contentid/103187
Ausgedruckt am: 25.11.2024 um 20:11 Uhr