Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
Anzeige
Archiv - Navigation
492to496
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
492to496
492to496
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Inhalte löschen

Inhalte löschen
05.10.2004 07:19:03
Klaus
Guten Morgen zusammen
Ich habe mir aus der Recherche folgenden Code herausgesucht und angepasst

Private Sub Worksheet_Change(ByVal Target As Range)
Dim bereich1 As Range
Set bereich1 = Range("i15:i34")
If Not Intersect(Target, bereich1) Is Nothing Then
If Target.Value = "" Then Target.Offset(0, 5).ClearContents
Else: End If
End Sub

Es funktioniert aber nur, wenn ich den Inhalt von "I15" lösche. Wenn ich zum Beispiel den Inhalt von "I16" lösche, bleibt der Wert in "N16". Nur wenn ich nochmals "I16" lösche, funktioniert es.
Warum ist das so und wie kann ich es ändern?
Vielen Dank im Voraus
Gruss Klaus

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Inhalte löschen
Nike
Hi,
mal so versuchen?
Sollte jetzt auch klappen, wenn man gleich mehrere Zellen auf einmal loescht...

Private Sub Worksheet_Change(ByVal Target As Range)
Dim bereich1 As Range
Dim rngCell As Range
Dim rngCT As Range
Set bereich1 = Range("i15:i34")
For Each rngCT In Target
For Each rngCell In bereich1
If Not Intersect(rngCT, rngCell) Is Nothing Then
If rngCT.Value = "" Then
Application.EnableEvents = False
rngCT.Offset(0, 5).ClearContents
Application.EnableEvents = True
End If
End If
Next
Next
End Sub

Bye
Nike
AW: Inhalte löschen
WernerB.
Hallo Klaus,
wenn Du jeweils den Inhalt von nur einer Zelle löschen willst, kann ich das von Dir geschildete Verhalten zwar nicht nachvollziehen, trotzdem würde ich den Code dann wie folgt ändern:

Private Sub Worksheet_Change(ByVal Target As Range)
Dim bereich1 As Range
If Intersect(Range("I15:I34"), Target) Is Nothing Then Exit Sub
If Target.Cells.Count <> 1 Then Exit Sub
If Target.Value = "" Then Target.Offset(0, 5).ClearContents
End Sub

Viel Erfolg wünscht
WernerB.
P.S.: Dieses Forum lebt auch von den Rückmeldungen der Fragesteller an die Antworter !
Anzeige
AW: Inhalte löschen
05.10.2004 08:19:32
Klaus
Vielen Dank für Eure Hilfe.
Es klappt jetzt, besonders gut mit der Methode von Nike, da ich nun mehrere Zellen löschen kann.
Gruss Klaus

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige