Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Bei Zellwertänderung andere Zelle leeren

Bei Zellwertänderung andere Zelle leeren
24.02.2007 13:55:10
Fritz_W
Hallo Forum,
ich benötige eine VBA-Lösung mit der ich den Zellinhalt in J3 lösche, wenn ich in der Zelle J2 einen anderen Wert eintrage.
Vielen Dank für eure Unterstützung.
Mfg
Fritz
Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Bei Zellwertänderung andere Zelle leeren
24.02.2007 14:04:00
Nepumuk
Hallo Fritz,
Rechtsklick auf den Tabellenreiter der Tabelle - Code anzeigen. Folgende Prozedur einfügen:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Address = "$J$2" Then Range("J3").ClearContents
End Sub

Gruß
Nepumuk
Anzeige
Funktioniert! Vielen Dank! o.w.T.
24.02.2007 14:14:20
Fritz_W
AW: Bei Zellwertänderung andere Zelle leeren
24.02.2007 14:16:00
Daniel
Hallo
diesen Code ins Modul des betroffenen Sheets eintragen
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Range("j2")) Is Nothing Then Exit Sub
Application.EnableEvents = False
Range("J3").ClearContents
Application.EnableEvents = True
End Sub

Gruß, Daniel
Anzeige
AW: Bei Zellwertänderung andere Zelle leeren
24.02.2007 14:31:00
Fritz_W
Hallo Daniel,
auch Dir herzlichen Dank für die Hilfe.
Gruß
Fritz
;

Forumthreads zu verwandten Themen

Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Zellinhalt bei Änderung der Zelle automatisch leeren


Schritt-für-Schritt-Anleitung

Um den Zellinhalt in J3 automatisch zu leeren, wenn du einen anderen Wert in J2 einträgst, kannst du VBA verwenden. Folge diesen Schritten:

  1. Öffne deine Excel-Datei und klicke mit der rechten Maustaste auf den Reiter des betroffenen Arbeitsblatts.

  2. Wähle „Code anzeigen“ aus dem Kontextmenü.

  3. Füge den folgenden VBA-Code in das angezeigte Fenster ein:

    Private Sub Worksheet_Change(ByVal Target As Range)
       If Intersect(Target, Range("J2")) Is Nothing Then Exit Sub
       Application.EnableEvents = False
       Range("J3").ClearContents
       Application.EnableEvents = True
    End Sub
  4. Schließe den VBA-Editor und kehre zu deinem Arbeitsblatt zurück.

Nun wird der Inhalt von Zelle J3 automatisch gelöscht, wenn du einen neuen Wert in J2 eingibst.


Häufige Fehler und Lösungen

  • Fehler: Der Code funktioniert nicht.

    • Lösung: Stelle sicher, dass du den Code im richtigen Arbeitsblattmodul eingefügt hast und nicht in einem allgemeinen Modul.
  • Fehler: Es passiert nichts, wenn du den Wert in J2 änderst.

    • Lösung: Überprüfe, ob die „Ereignisse aktivieren“ in den Excel-Optionen nicht deaktiviert sind.

Alternative Methoden

Falls du ohne VBA arbeiten möchtest, kannst du auch die folgenden Methoden nutzen:

  1. Formeln: Verwende eine Formel in Zelle J3, die den Inhalt von J2 überwacht. Das ist allerdings nicht so flexibel wie VBA.
  2. Bedingte Formatierung: Du kannst eine bedingte Formatierung verwenden, um den Inhalt visuell hervorzuheben, wenn J2 geändert wird.

Praktische Beispiele

Hier ist ein einfaches Beispiel, wie du den VBA-Code verwenden kannst:

  • Anwendung: Du hast eine Liste von Produkten in J2. Immer wenn du ein neues Produkt eingibst, möchtest du, dass das zugehörige Feld in J3 geleert wird, um Platz für neue Informationen zu schaffen.

Wenn du viele Zellen überwachen möchtest, kannst du den Code wie folgt anpassen:

Private Sub Worksheet_Change(ByVal Target As Range)
    If Not Intersect(Target, Range("J2:J10")) Is Nothing Then
        Application.EnableEvents = False
        Range("J3").ClearContents
        Application.EnableEvents = True
    End If
End Sub

Mit dieser Anpassung wird der Inhalt von J3 geleert, wenn du einen Wert in den Zellen J2 bis J10 änderst.


Tipps für Profis

  • Event-Handling optimieren: Wenn du mit großen Datenmengen arbeitest, ist es ratsam, Application.EnableEvents zu verwenden, um unnötige Ereignisse zu vermeiden und die Leistung zu steigern.
  • Code dokumentieren: Kommentiere deinen Code, um später leichter nachvollziehen zu können, was jede Zeile bewirken soll.
  • Backup erstellen: Bevor du Änderungen im VBA vornimmst, erstelle immer ein Backup deiner Datei.

FAQ: Häufige Fragen

1. Muss ich Excel in einer bestimmten Version verwenden? Ja, dieser VBA-Code funktioniert in Excel 2007 und höheren Versionen.

2. Kann ich mehrere Zellen gleichzeitig überwachen? Ja, das ist möglich. Du kannst den Intersect-Befehl anpassen, um mehrere Zellen zu überwachen, wie im praktischen Beispiel gezeigt.

3. Was passiert, wenn ich den Code lösche? Wenn du den Code entfernst, wird die automatische Löschung des Zellinhalts nicht mehr funktionieren. J3 bleibt dann unverändert, egal was du in J2 eingibst.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige