Hallo,
ich nutze diesen Makrobefehl, um leere Zellen in Spalte D von D1 bis D500 mit dem letzten oberen Zellinhalt auszufüllen:
For Each c In Range(„D1“, „D500“)
If c „“ Then NeuerName = c Else c.Value = NeuerName
Next
Wie geht das für zwei Spalten(D und E)?
Wenn ich den Befehl nacheinander in Spalte D und dann E laufen lasse, bekomme ich die letzen Zellinhalte von D an den Anfang von E ausgefüllt.
Grüsse
Matthias
ich nutze diesen Makrobefehl, um leere Zellen in Spalte D von
D1 bis D500 mit dem letzten oberen Zellinhalt auszufüllen:
For Each c In Range(„D1“, „D500“)
If c „“ Then NeuerName = c Else c.Value = NeuerName
Next
Wie geht das für zwei Spalten(D und E)?
Hi Matthias,
Sub nn()
Dim Zei As Long
Zei = Range(„D500“).End(xlUp).Row
Range(„D“ & Zei +1 & „
500“) = Range(„D“ & Zei)
Zei = Range(„E500“).End(xlUp).Row
Range(„E“ & Zei+1 & „:E500“) = Range(„E“ & Zei)
End Sub
Gruß
Reinhard
Hallo Reinhard,
Danke für die schnelle Antwort. Ich habe natürlich die Aufgabe nicht vollständig bzw. richtig formuliert:
Es sollen die Zellen mit dem vorh. Eintrag bis zum nächsten Eintrag gefüllt werden:
A B
C D
sieht dann so aus (die „Füllspalten“ haben unterschiedlich viele Zellen, das läßt sich hier aber schlecht darstellen):
A B
A B
A B
A B
C D
C D
C D
C D
C D
C D
Deine Formel geht, füllt aber nur vom letzten Zelleintrag aus, entspricht jedoch genau meiner ursprünglichen Fragestellung. Sorry!
Gruß
Matthias
[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]
Danke für die schnelle Antwort. Ich habe natürlich die Aufgabe
nicht vollständig bzw. richtig formuliert:
Es sollen die Zellen mit dem vorh. Eintrag bis zum nächsten
Eintrag gefüllt werden:
Hi Matthias,
Option Explicit
'
Sub Fuell()
Dim c, D, E
For Each c In Range("D1:smiley:500")
If c "" Then
D = c
Else
c.Value = D
End If
If c.Offset(0, 1) "" Then
E = c
Else
c.Offset(0, 1) = E
End If
Next c
End Sub
Gruß
Reinhard
Hi Reinhard,
tut mir leid, muß nochmal nerven:
Jetzt werden die leeren Zellen in Spalte D und E so ausgefüllt:
A D
A A
A A
B E
A B
A B
C B
A F
A C
A C
Es sollen aber alle leere Zellen unter A mit A, unter B mit B usw. gefüllt werden. Mit „Eigenmanipulationen“ krieg ich die Zirkelfunktion nicht hin, das haperts halt.
[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]
Sorry Matthias,
war’n Fehler im Code:
Sub Fuell()
Dim c, D, E
For Each c In Range("D1:smiley:500")
If c "" Then
D = c
Else
c.Value = D
End If
If c.Offset(0, 1) "" Then
E = c.Offset(0, 1)
Else
c.Offset(0, 1) = E
End If
Next c
End Sub
Gruß
Reinhard
Hi Reinhard, jetzt klappt es so, wie’s soll! Mal wieder Dankeschön, ich zieh mir jetzt einen Kaffe auf Dein Wohl 'rein!
Grüsse
Matthias
[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]