Zelle löschen!
#1
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
Top
#2
Hallo,

deine Beschreibung ist unklar.

-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?

Gruß Werner
Top
#3
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.
Top
#4
Ich denke er meint "...der Inhalt von der Zelle A1 soll dann gelöscht, also geleert werden."
Top
#5
Hallo,

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.


Gruß Werner
Top
#6
Ich befürchte er meinte eigentlich "geleert". Bei Deinem Vorschlag ist die Zelle schwubsdiwubs weg... Smile
Top
#7
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
Top
#8
Hallo

der Code von Werner ist schon richtig, mit einer kleinen Aenderung.  Ersetze bitte den unteren Codeteil, dann klappt es:
Code:
Target.Offset(-1).Delete durch Range("A1").Value = Empty

mfg Gast 123
Top
#9
Funktioniert einwandfrei - umgekehrt aber nicht.
Wenn a2 mit Inhalt belegt ist, sollte nach Eingabe in a1 - a2 geleert werden - wäre super!
Top
#10
Wäre das eine Lösung?


Angehängte Dateien
.xlsm   Wenn_Zelle_A1_ungleich_A2_dann_Inhalt_loeschen.xlsm (Größe: 14,65 KB / Downloads: 3)
Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste