Registriert seit: 22.02.2017
Version(en): 2013
Moin zusammen,
ich habe ein Arbeitsblatt mit ca. 3.000 Zeilen, wobei mind. 2 Zeilen zu einer bestimmten Gruppe gehören und bei einige Spalten dieselben Informationen enthalten. Ein schlauer Nutzer hat nun nach Gruppen gefiltert und den Inhalt einer Spalte gelöscht, was dazu geführt hat, dass in jeder zweiten Zeile der Inhalt aus der Zelle darüber fehlt.
Gibt es eine Funktion oder ein Makro (habe nur minimalst Makro-Erfahrung), das man über die Spalte "legen" kann, das dann abfragt, ob eine Zelle einen Wert enthält und diesen soweit nach unten kopiert bis eine Zeile mit einem neuen Wert kommt? Sofern man überhaupt verstehen kann, was mein Begehr ist :)
Danke!
VG
Registriert seit: 17.04.2014
Version(en): MS Office 365(32)
Hallo,
vielleicht so in der Art (hier für Spalte A ab Zeile 2):
Sub aaa()
Dim rngZ As Range
With Range("A2:A" & Cells(Rows.Count, 1).End(xlUp).Row)
For Each rngZ In .SpecialCells(xlCellTypeBlanks)
rngZ.Value = rngZ.Offset(-1).Value
Next rngZ
End With
End Sub
Gruß Uwe
Registriert seit: 11.04.2014
Version(en): Office 365
Hallo,
Zitat:Sofern man überhaupt verstehen kann, was mein Begehr ist
ich habe es nicht verstanden.
Viele Grüße
Klaus-Dieter
Der Erfolg hat viele Väter,
der Misserfolg ist ein Waisenkind
Richard Cobden
Registriert seit: 02.05.2018
Version(en): Excel 365 & 2016
26.05.2020, 16:24
(Dieser Beitrag wurde zuletzt bearbeitet: 26.05.2020, 16:25 von MisterBurns.)
Dazu brauchst du kein Makro. Markiere die ganze Spalte - vorausgesetzt, dass in der ersten Zeile eine Überschrift steht. Ansonsten markierst du die gesamte Spalte ab der Zeile, in der Inhalt drinsteht. Angenommen, die betreffende Spalte ist C, die erste leere Zelle ist C4.
Taste F5 - Inhalte - Leerzellen - Ok
Schreibe nun
und schließe die Eingabe mit gedrückter Strg-Taste ab. Fertig.
Nun kannst du noch die komplette Spalte markieren - Strg+C --> Einfügen - Inhalte einfügen - Werte - Ok
Schöne Grüße
Berni
Registriert seit: 22.02.2017
Version(en): 2013
Vielen Dank für die vielen Antworten.
@Misterburns: über diese Befehle fülle ich alle besagten Zellen mit dem selben Inhalt, oder? Das wäre nicht das Ziel.
@Klaus-Dieter: um bei dem Beispiel von Misterburns zu bleiben: es steht ein Wert in C3, C4 ist leer, in C5 steht ein anderer Wert als in C3, C6-C8 ist leer, C9 wieder anderer Wert usw. jetzt sollen die leeren Zellen mit dem Inhalt der darüber liegenden gefüllten Zellen gefüllt werden.
@Kuwer: das übersteigt leider meine Kompetenz. Wo muss ich das von dir gepostete eingeben?
Registriert seit: 02.05.2018
Version(en): Excel 365 & 2016
Zitat:über diese Befehle fülle ich alle besagten Zellen mit dem selben Inhalt, oder? Das wäre nicht
Wenn du es einfach mal ausprobieren würdest statt die Antwort anzuzweifeln, wüsstest du es.
Schöne Grüße
Berni
Registriert seit: 22.02.2017
Version(en): 2013
Habe die Schritte wie beschrieben durchgeführt: Spalte markiert --> F5 --> Inhalte --> Leerzellen --> ok --> =N2 eingegeben (erste leere Zelle ist N3) --> mit gedrückter strg-taste geentert. Ergebnis: in allen leeren Zellen der markierten Spalte steht nun =N2
Registriert seit: 02.05.2018
Version(en): Excel 365 & 2016
15.06.2020, 11:55
(Dieser Beitrag wurde zuletzt bearbeitet: 15.06.2020, 11:57 von MisterBurns.)
Das kann ich nicht glauben... steht das dann als Formel in jeder Zelle? Oder tatsächlich als Text "=N2"?
Lade bitte eine exakte Kopie der Originaldatei mit etwas 20 Zeilen hoch, selbstverständlich mit anonymisierten Datensätzen.
Ist die Spalte als Text formatiert? Das könnte eine Erklärung sein. Einfach mal als Standard formatieren.
Schöne Grüße
Berni
Registriert seit: 22.02.2017
Version(en): 2013
Wow-Effekt! Vielen Dank! Als Standard formatiert, dann ging es.