Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: VBA Tabellenblatt auf Änderungen prüfen

VBA Tabellenblatt auf Änderungen prüfen
16.05.2019 16:28:22
Steve
Hallo,
kann mir vielleicht jemand bei einen VBA Code helfen.
Ich möchte gern ein Tabellenblatt (Zellbereich A1:D30) alle 5 min auf Änderungen überprüfen und wenn eine Änderung erkannt wurde, dann soll die Zelle E1 grün gefärbt werden, die Zelle E1 soll so lange grün bleiben, bis die Kenntnisnahme mit einen Button bestätigt wurde.
Danke
Gruß Steve
Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: VBA Tabellenblatt auf Änderungen prüfen
16.05.2019 16:53:39
Martin
Hallo Steve,
es ist einfacher, wenn die Änderungen sofort geprüft werden:
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
If Application.Intersect(Range("A1:D30"), Target) Is Nothing Then
Exit Sub
Else
Range("E1").Interior.ColorIndex = 35
End If
End Sub
Sub Kenntisnahme()
Range("E1").Interior.ColorIndex = xlNone
End Sub
Viele Grüße
Martin
Anzeige
AW: VBA Tabellenblatt auf Änderungen prüfen
16.05.2019 16:57:34
Steve
Hallo Martin,
vielen Dank für die schnelle Antwort.
Ich werde es testen und Rückmeldung geben.
Vielen Dank
AW: VBA Tabellenblatt auf Änderungen prüfen
16.05.2019 17:05:40
Hajo_Zi
ich hatte vermutet es geht um Formeln, da lag ich aber wohl falsch.

Beiträge von Werner, Luc, robert, J.O.Maximo und folgende lese ich nicht.
Die Beiträge werden auch ignoriert, es erfolgt keine Antwort.
Anzeige
AW: VBA Tabellenblatt auf Änderungen prüfen
16.05.2019 20:02:12
Steve
Hallo Martin,
funktioniert wie gewünscht.
Super
Gruß Steve
;

Forumthreads zu verwandten Themen

Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

VBA zur Überprüfung von Änderungen in einem Excel-Tabellenblatt


Schritt-für-Schritt-Anleitung

Um ein Tabellenblatt in Excel auf Änderungen zu prüfen und die Zelle E1 bei Änderungen grün zu färben, kannst du den folgenden VBA-Code verwenden. Diese Anleitung richtet sich an Nutzer von Excel mit aktivierter Makrofunktion.

  1. Öffne dein Excel-Dokument und drücke ALT + F11, um den VBA-Editor zu öffnen.

  2. Suche in der Projektansicht dein Arbeitsblatt (z.B. "Tabelle1").

  3. Doppelklicke auf das Arbeitsblatt, um das Codefenster zu öffnen.

  4. Füge den folgenden Code ein:

    Option Explicit
    Private Sub Worksheet_Change(ByVal Target As Range)
       If Application.Intersect(Range("A1:D30"), Target) Is Nothing Then
           Exit Sub
       Else
           Range("E1").Interior.ColorIndex = 35
       End If
    End Sub
    
    Sub Kenntisnahme()
       Range("E1").Interior.ColorIndex = xlNone
    End Sub
  5. Schließe den VBA-Editor und speichere deine Datei als Makro-fähige Arbeitsmappe (*.xlsm).

  6. Teste die Funktion, indem du eine Änderung im Bereich A1:D30 vornimmst. Die Zelle E1 sollte nun grün gefärbt werden.

  7. Um die Färbung zu entfernen, erstelle einen Button in deinem Arbeitsblatt und verlinke ihn mit der Kenntisnahme-Subroutine.


Häufige Fehler und Lösungen

  • Fehler: Die Zelle E1 wird nicht grün, wenn Änderungen vorgenommen werden.

    • Lösung: Stelle sicher, dass der Code korrekt im richtigen Arbeitsblatt-Modul eingefügt wurde. Der Code muss im spezifischen Arbeitsblatt (z.B. "Tabelle1") und nicht im Modul für alle Arbeitsblätter eingefügt werden.
  • Fehler: Der Button zur Bestätigung funktioniert nicht.

    • Lösung: Überprüfe, ob der Button korrekt mit der Kenntisnahme-Subroutine verknüpft ist. Klicke mit der rechten Maustaste auf den Button und wähle "Makro zuweisen".

Alternative Methoden

Wenn du keine VBA-Makros verwenden möchtest, kannst du auch die Funktion "Bedingte Formatierung" nutzen:

  1. Wähle den Bereich A1:D30 aus.
  2. Gehe zu "Start" > "Bedingte Formatierung" > "Neue Regel".
  3. Wähle "Formel zur Ermittlung der zu formatierenden Zellen verwenden".
  4. Gib eine Formel ein, die auf deine Kriterien zutrifft (z.B. =A1<>"").
  5. Setze das Format auf grün für die Füllfarbe.

Diese Methode ist allerdings weniger flexibel und erkennt keine Änderungen nach dem Speichern des Dokuments.


Praktische Beispiele

Angenommen, du arbeitest an einem Teamprojekt und möchtest, dass alle Änderungen an bestimmten Zellen sofort sichtbar werden. Mit dem oben genannten VBA-Skript kannst du den Status der Zelle E1 einfach überprüfen, um festzustellen, ob Änderungen vorgenommen wurden. Dies ist besonders nützlich in Situationen, in denen mehrere Benutzer an derselben Datei arbeiten.


Tipps für Profis

  • Automatisierung: Du kannst den VBA-Code erweitern, um auch andere Zellen oder Bereiche auf Änderungen zu überprüfen.
  • Benachrichtigungen: Füge eine Nachricht hinzu, die beim Ändern der Zelle E1 angezeigt wird, um die Benutzer darauf hinzuweisen, dass eine Änderung vorgenommen wurde.
  • Code optimieren: Überlege, wie du den Code effizienter gestalten kannst, insbesondere wenn du mit größeren Datenmengen arbeitest.

FAQ: Häufige Fragen

1. Frage
Wie oft wird der Code ausgeführt?
Der Code wird jedes Mal ausgeführt, wenn eine Änderung im Bereich A1:D30 vorgenommen wird.

2. Frage
Kann ich den Code auch für andere Zellbereiche verwenden?
Ja, du kannst die Range in der Application.Intersect-Funktion anpassen, um andere Zellbereiche zu überwachen.

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