ich möchte über eine Schaltfläche in alle Zeilen der Spalte K, die leer sind, das Datum, welches in der gleichen Zeile in Spalte J steht. Also z. B. Falls K4 gleich leer K4=J4. Und das für alle Zeilen der Tabelle. Hat da jemand vllt auf die schnelle einen Code für mich.
Das möchtest du also für alle 1.000.000 Zeilen? Bist du dir da sicher? Oder vielleicht doch nur für alle Zeilen, die ausgefüllt sind?
Code:
Sub Datum_uebertragen() Dim i As Long
For i = 2 To Cells(Rows.Count, "J").End(xlUp).Row 'evtl. "J" anpassen If Cells(i, "K") = "" Then Cells(i, "K") = Cells(i, "J") Next i
End Sub
Die letzte gefüllte Zeile deiner Tabelle wird in Spalte J ermittelt. Wichtig dabei ist, dass in Spalte J keine Leerzeilen sein dürfen. Falls das nicht der Fall ist, tausche in der kommentierten Zeile das "J" gegen eine andere Spalte aus, die entsprechend lückenlos gefüllt ist.
09.11.2018, 13:56 (Dieser Beitrag wurde zuletzt bearbeitet: 09.11.2018, 13:56 von MisterBurns.)
Ja, müsste es. Da ich deine Datei nicht sehen kann, weiß ich nicht, woran es hapert. Aber zur Not kannst du ja die 10000 drinlassen, wenn du weißt, dass es nicht mehr Zeilen werden. Passe dann aber den Code noch an:
Code:
For i = 2 To Cells(Rows.Count, "J").End(xlUp).Row If Cells(i, "K") = "" And Cells(i, "J") <> "" Then Cells(i, "K") = Cells(i, "J") Next i
Als Alternative zu VBA ginge noch der Weg über eine Hilfsspalte mit
Code:
=WENN(K2="";J2;K2)
und diese Hilfsspalte kannst du dann kopieren und als Werte in Spalte K einfügen.
Schöne Grüße Berni
Folgende(r) 1 Nutzer sagt Danke an MisterBurns für diesen Beitrag:1 Nutzer sagt Danke an MisterBurns für diesen Beitrag 28 • Aces