Hallo, möchte mit VBA eine Zelle löschen! z.B. wenn in der Zelle a1 10:00 steht und ich in die Zelle a2 einen anderen Wert eintragen möchte, sollte der Wert in der Zelle a1 automatisch gelöscht werden: LG Ubi5
-soll die Zelle A1 tatsächlich gelöscht werden und die folgenden Zellen nach oben rücken? -oder soll die Zelle A1 nur geleert werden? -nur wenn 10:00 in Zelle A1 steht oder ist der Zellinhalt egal? -soll das alles nur auf die Zellen A1 und A2 Anwendung finden?
Wenn in der Zelle a1 z.B. 10:00 Stunden stehen (in der Zelle a1 steht immer nur eine Zeit) und ich in die Zelle a2 eine andere Zeit eintrage, dann sollte die Zelle a1 gelöscht werden. Das findet nur auf diese beiden Zellen statt.
der Code gehört ins Codemodul des Tabellenblattes auf dem er sich auswirken soll: -Rechtsklick auf den Tabellenblattreiter - Code anzeigen - Code rechts ins Codefenster kopieren
Code:
Private Sub Worksheet_Change(ByVal Target As Range) If Target.Address(0, 0) = "A2" Then If IsNumeric(Target) Then Target.Offset(-1).Delete End If End If End Sub
@JereMaia Ich habe gefragt, ob gelöscht werden soll oder nur geleert - und er schreibt gelöscht.
Habe es probiert - funktioniert leider nicht so wie ich es wollte - Entschuldigung. Wenn ich in a2 eine Zeit eingebe, dann wird diese Zeit in a1 geschrieben und a2 bleibt leer. Vielleicht habe ich mich nicht richtig ausgedrückt. In der Zelle a1 steht z.B. 10:00, in die Zelle a2 schreibe ich z.B. 11:00 und dann sollt die Zelle a1 gelöscht werden (leer sein) bzw. umgekehrt. LG Ubi5