Nehmen wir also an, ich habe die folgenden Werte:
A2=a, A5=b, A6=c, A10=d
Im Wesentlichen möchte ich die vorherigen Werte wie folgt zusammenfassen:
A2:A4=a,A5=b, A6:A9=c,A10:A99999=d
Ich habe Folgendes versucht: Ich habe rechts eine neue Spalte eingefügt und so etwas gemacht: =IF(A2="",A1,A2)
aber das funktioniert nur für die ersten beiden Instanzen in der Spalte B, da es mehr Lücken gibt und nicht immer die gleiche Anzahl von Lücken. Ich übersehe offensichtlich etwas.
Danke.
Antwort1
Antwort2
Versuchen Sie dieses kurze Makro:
Sub FillDown()
Dim rng As Range, r As Range
Set rng = Range("A2:A99999")
Application.ScreenUpdating = False
For Each r In rng
v = r.Value
If v = "" Then r.Value = r.Offset(-1, 0)
Next r
Application.ScreenUpdating = True
End Sub
Makros sind sehr einfach zu installieren und zu verwenden:
- ALT-F11 öffnet das VBE-Fenster
- ALT-I ALT-M öffnet ein neues Modul
- Füge das Material ein und schließe das VBE-Fenster
Wenn Sie die Arbeitsmappe speichern, wird das Makro mit gespeichert. Wenn Sie eine neuere Version von Excel als 2003 verwenden, müssen Sie die Datei als .xlsm und nicht als .xlsx speichern.
So entfernen Sie das Makro:
- Öffnen Sie das VBE-Fenster wie oben
- Löschen Sie den Code
- Schließen Sie das VBE-Fenster
So verwenden Sie das Makro aus Excel:
- ALT-F8
- Wählen Sie das Makro
- Berühren Sie RUN
Weitere Informationen zu Makros im Allgemeinen finden Sie unter:
http://www.mvps.org/dmcritchie/excel/getstarted.htm
Und
http://msdn.microsoft.com/en-us/library/ee814735(v=office.14).aspx
Damit dies funktioniert, müssen Makros aktiviert sein!