ich arbeite an einem Makro, dass alle leeren Zellen in meinem benutzten Bereich füllen soll. Die Daten sind nach Spalten zugehörig, also wird einfach bei einer leeren Zelle der Wert der vorherigen kopiert. Da sich in den ersten beiden Zeilen allerdings jeweils Text befindet, ist das für die 3. Zeile (also der ersten Zeile mit Zahlen) nicht möglich, also sollte dort der Wert der 1. gefüllten Zelle in der selben Spalte kopiert werden :)
Sub LeereZellekopieren()
Dim MyRange As Range, Zelle As Range
Set MyRange = ActiveSheet.UsedRange.Offset(2, 1)
For Each Zelle In MyRange.SpecialCells(xlCellTypeBlanks)
If Zelle 'In 3. Zeile then Zelle = nächste nicht leere Zelle in Spalte
Else: Zelle = Zelle.Offset(-1, 0)
End If
Next Zelle
End Sub
Bis auf die If-Zeile funktioniert das schon ganz gut,
allerdings weiß ich nicht wie man "if Zelle.row = 3" oder "if Zelle = Cells(3, *)" schreibt bzw. wüsste nicht wie man die erste gefüllte Zelle findet.
Bei Zelle = Zelle.Offset(1, 0 ) würde es nämlich leider ein Problem geben, wenn die 4. Zeile ebenfalls leer ist..
Ich hoffe mein Problem ist verständlich :)
Nadine