Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1916to1920
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

Wenn bestimmter wert dann Zelle löschen

Wenn bestimmter wert dann Zelle löschen
13.02.2023 03:29:59
Dennis
Hallo zusammen,
Ich möchte folgendes realisieren.
Wenn Zelle E20 "X" enthält dann F20 löschen. Wenn Zelle E21 "X" enthält dann F21 löschen. Wenn Zelle E22 "X" enthält dann F23 löschen.
und immer so Weiter. Das gleich auch umgekehrt.
Wenn Zelle F20 "X" enthält dann E20 löschen. Wenn Zelle F21 "X" enthält dann E21 löschen. Wenn Zelle F22 "X" enthält dann E23 löschen.
Danke

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Wenn bestimmter wert dann Zelle löschen
13.02.2023 07:41:20
Marc
Naja kleines Makro hilft da:

Dim i as Integer
for i = 1 to 30000
    If Sheets("Tabelle").Range("E" & i) = X Then
          Sheets("Tabelle").Range("F" & i)    = ""
    End If
 If Sheets("Tabelle").Range("F" & i) = X Then
          Sheets("Tabelle").Range("E" & i)    = ""
    End If
next i 

AW: Wenn bestimmter wert dann Zelle löschen
13.02.2023 07:59:57
GerdL
Hallo Dennis,
Rechtsklick auf den Tabellenreiter - Code anzeigen anklicken - ins Codefenster rechts oben kopieren.
Private Sub Worksheet_Change(ByVal Target As Range)
    Dim C As Range
     
    For Each C In Intersect(Target, Range("E20:F99"))
        If UCase$(C) = "X" Then
            Application.EnableEvents = False
            If C.Column = 5 Then
                C.Offset(0, 1).ClearContents
            Else
                C.Offset(0, -1).ClearContents
            End If
            Application.EnableEvents = True
        End If
    Next
End Sub
Gruß Gerd
Anzeige
AW: Wenn bestimmter wert dann Zelle löschen
14.02.2023 01:08:52
Dennis
Der Code funktioniert soweit ganz gut. Sobald ich woanders eine Eingabe mache dann kommt Fehler.
Laufzeitfehler 424. Objekt erforderlich
Private Sub Worksheet_Change(ByVal Target As Range)
    Dim C As Range
     
    For Each C In Intersect(Target, Range("E20:F99"))
        If UCase$(C) = "X" Then
            Application.EnableEvents = False
            If C.Column = 5 Then
                C.Offset(0, 1).ClearContents
            Else
                C.Offset(0, -1).ClearContents
            End If
            Application.EnableEvents = True
        End If
    Next
End Sub

Anzeige
AW: Wenn bestimmter wert dann Zelle löschen
14.02.2023 07:11:29
GerdL
Hallo Dennis,
entschuldige bitte. Es fehlte die äußere einschränkende If-Bedingung.
Private Sub Worksheet_Change(ByVal Target As Range)
    Dim C As Range
     
    If Not Intersect(Target, Range("E20:F99")) Is Nothing Then
    
        For Each C In Intersect(Target, Range("E20:F99"))
            If UCase$(C) = "X" Then
                Application.EnableEvents = False
                If C.Column = 5 Then
                    C.Offset(0, 1).ClearContents
                Else
                    C.Offset(0, -1).ClearContents
                End If
                Application.EnableEvents = True
            End If
        Next
    
    End If
End Sub
Gruß Gerd
Anzeige
AW: Wenn bestimmter wert dann Zelle löschen
15.02.2023 04:01:12
Dennis
Es läuft jetzt. Vielen Dank

340 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige