Live-Forum - Die aktuellen Beiträge
Datum
Titel
29.03.2024 13:14:12
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1660to1664
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Zelle löschen wenn andere Zelle leer ist

Zelle löschen wenn andere Zelle leer ist
11.12.2018 14:20:58
Erik
Hallo zusammen,
ich habe diesen VBA Code:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim rng As Range
Set rng = Range("M7:N250")
If Intersect(rng, Target) Is Nothing Then Exit Sub
Cancel = True
If Target = "a" Then
Target = ""
Else
Target = "a"
Target.HorizontalAlignment = xlCenter
End If
Dim i As Long
Application.ScreenUpdating = False
For i = 1 To Cells(Rows.Count, 1).End(xlUp).Row
If Cells(i, 28) = "" Then
Cells(i, 14).Value = ""
End If
Next i
Application.ScreenUpdating = True
End Sub

Es kommt ein Laufzeitfehler 1004 - Anwendungs- oder objektdefinierter Fehler
Der Hintergrund ist die Zelle Spalte 14 (N) soll gelöscht werden wenn die Zelle 28 (AB) in der selben Zeile leer ist.
Was auch funktionieren würde wäre wenn der doppelklick sich nicht ausführen lassen würde wenn in der selbigen Zeile Zelle AB leer ist.
Allerdings soll die Range M7:M250 davon nicht betroffen sein.
Nur N (14)
Hoffe mein Problem ist verständlich
Gruß
Erik

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zelle löschen wenn andere Zelle leer ist
11.12.2018 15:37:06
Beverly
Hi Erik,
meinst du so etwas:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim rng As Range
Set rng = Range("M7:N250")
If Not Intersect(rng, Target) Is Nothing Then Exit Sub
If Cells(Target.Row, 28) = "" Then
Cancel = True
Target = ""
End If
End Sub


AW: Zelle löschen wenn andere Zelle leer ist
11.12.2018 16:17:14
Erik
Hallo Karin,
leider funktioniert Dein Code nicht.
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim rng As Range
Dim i As Long
Set rng = Range("M7:M250")
If Intersect(rng, Target) Is Nothing Then Exit Sub
Cancel = True
If Target = "a" Then
Target = ""
Else
Target = "a"
Target.HorizontalAlignment = xlCenter
End If
End Sub
Wie muß ich diesen ändern, damit nur der Bereich: Range("N7:N250")
von der Überprüfung Spalte AB abgefragt wird.
Gruß
Erik
Anzeige
AW: Zelle löschen wenn andere Zelle leer ist
11.12.2018 16:39:27
Beverly
Hi Eric,
ändere in meinem Code die Zeile Target = "" in Cells(Target.Row, 14) = ""
und noch ein Hinweis: mit Begriffen wie "funktionert nicht" kann man leider absolut nichts anfangen - du solltest schon ganz konkret beschreiben WAS nicht funktioniert.


AW: Zelle löschen wenn andere Zelle leer ist
11.12.2018 16:57:44
Erik
Hallo Karin,
vielen Dank für Deine Hilfe.
Ich habe Deinen Code in meinen eingefügt...
... sieht jetzt so aus:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim rng As Range
Dim i As Long
Set rng = Range("M7:N250")
If Intersect(rng, Target) Is Nothing Then Exit Sub
If Cells(Target.Row, 28) = "" Then
Cancel = True
Cells(Target.Row, 14) = ""
End If
Cancel = True
If Target = "a" Then
Target = ""
Else
Target = "a"
Target.HorizontalAlignment = xlCenter
End If
End Sub
Es läuft aber nicht einwandfrei und zwar:
kann man mit Doppelklick in Spalte N den Buchstaben a setzen.
Ein weiterer Doppelklick entfernt aber das a nicht mehr.
Wenn ich nun in Spalte M doppelklicke und die Spalte AB nicht befüllt ist wird Spalte N gelöscht.
Es soll aber so sein, dass in Spalte N der Buchstabe nur gesetzt werden kann, wenn Spalte AB befüllt ist.
Die Spalte M soll von dieser Geschichte unberührt bleiben und mit Doppelklick an- bzw. abwählbar sein.
Gruß
Erik
Oder habe ich Deinen Code falsch eingefügt ?
Dein Code allein bewirkt beim Doppelklick nichts, es wird kein Buchstabe a gesetzt.
Anzeige
AW: Zelle löschen wenn andere Zelle leer ist
11.12.2018 17:12:30
Beverly
Hi Eric,
ich habe mich an deine Aussage gehalten, dass Spalte 14 gelöscht werden soll wenn Spalte AB nicht leer ist - ausgenommen davon ist ein Doppelklick im Bereich M7:N250 (wenn dort doppelgeklickt wird soll nichts passieren)! Nun also doch was anderes? Und was soll nun tatsächlich wann und wie passieren?


AW: Zelle löschen wenn andere Zelle leer ist
12.12.2018 08:11:07
Erik
Hallo Karin,
also nochmal von Anfang an.
Ich habe eine Tabelle in der die Spalte M durch einen Doppelklick markiert werden kann.
Diese Markierung ✔️ ist ab bzw. abwählbar.
Eine zweite Markierung soll in Spalte N gesetzt werden können auch an bzw. abwählbar.
In Spalte AB steht eine E-Mail Adresse.
Die Markierung in Spalte N soll nur gesetzt werden können, wenn sich eine E-Mail Adresse in AB befindet.
Wenn AB leer ist darf keine Markierung in Spalte N erfolgen (bzw. sofort wieder gelöscht werden - das wäre eigentlich egal).
Gruß
Erik
Anzeige
AW: Zelle löschen wenn andere Zelle leer ist
12.12.2018 08:24:11
Beverly
Hi Eric,
nochmal in Kurzform:
1. Bereich M7:M250: "a" eintragen - löschen
2. Bereich N7:N250: "a" eintragen (nur wenn AB nicht leer!) - löschen
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Not Intersect(Range("M7:M250"), Target) Is Nothing Then
Cancel = True
If Target = "" Then
Target = "a"
Else
Target.ClearContents
End If
ElseIf Not Intersect(Range("N7:N250"), Target) Is Nothing Then
Cancel = True
If Cells(Target.Row, 28)  "" Then
If Target = "" Then
Target = "a"
Else
Target.ClearContents
End If
End If
End If
End Sub


Anzeige
AW: Zelle löschen wenn andere Zelle leer ist
12.12.2018 16:55:58
Erik
Hallo Karin,
konnte es gerade teste funktioniert super!
Vielen Dank
und Gruß
Erik

338 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige