Excel: Bedingte Formatierung für geänderten und neu eingegeben Zelleninhalt

5 Antworten

Also das kannst du ganz einfach machen. Gehe mal in dein Tabellenblatt in welchem die Änderungen vorgenommen werden und dann mit ALT+F11 in den VBA Code für diese Tabelle. Da gibst du dann folgenden Code ein:

Private Sub Worksheet_Change(ByVal Target As Range)
If Not (Intersect(Target, Range("a:xfd")) Is Nothing) Then
Target.Interior.ColorIndex = 3
End If
End Sub

Hier werden jetzt sämtliche Änderungen in dieser Tabelle farbig hinterlegt.

Du kannst die Farbe (hier 3 = Rot) auch ändern wie du willst, dafür musst du dich an den Colorindex halten.

Wenn deine Tabelle jetzt sehr weit nach rechts geht, würde ich dir raten die Spalte A falls sie nicht benutzt wird auf eine breite 1,00 zu machen. Oder natürlich eine weitere einfügen und dann folgenden Code zu nehmen:

Private Sub Worksheet_Change(ByVal Target As Range)
If Not (Intersect(Target, Range("a:xfd")) Is Nothing) Then
Target.Interior.ColorIndex = 3
Cells(Target.Row, 1).Interior.ColorIndex = 3
End If
End Sub

Hier wird dann nicht nur die eigentliche Zelle sondern auch die erste Zelle in Spalte A eingefärbt, so sieht man, falls die eigentliche Zelle außerhalb des Sichtfeldes ist, dass in dieser Zeile etwas geändert wurde. Hier kannst ebenfalls die Farbe angleichen.

Das ganze sieht dann aus wie das Bild unten.

Ich hoffe das hilft dir weiter.

Falls du einen Blattschutz benutzt musst du die Formatierung der Zellen zulassen, weil sonst ein Fehler kommt.

So sieht das aus :-)) - (Microsoft Excel, Zellen, bedingte-formatierung)

AskingGuyGER 
Fragesteller
 10.02.2015, 16:16

Lieben Dank für die ausführliche Antwort.

Jetzt habe ich aber leider erstmal das Problem, dass ich in VB das entsprechende Tabellenblatt mit Doppelklick nicht öffnen kann ("kein Zugriff"). Werde das aber heute Abend mal auf meinem privaten PC probieren - vielleicht hängt das mit Sicherheitsvorgaben/Konzernrichtlinien meines Arbeitsgebers zusammen. Grundsätzlich gibt es aber keine Einschränkungen bzgl. Makros in unserem Hause. Wenn ich die EXCEL-Datei aber zu Hause entsprechend überarbeiten kann und es dann funktioniert, ist ja alles so wie ich es will.

Feedback folgt..

0
schmiddi1967  10.02.2015, 16:21
@AskingGuyGER

Warum Doppelklick, wenn du unten auf den Reiter deines Tabellenblattes gehst und dann ALT+F11 machst bist du automatisch schon an der richtigen Stelle. Da brauchst du nichts Doppelklicken.

0
AskingGuyGER 
Fragesteller
 10.02.2015, 19:55
@schmiddi1967

In der Firma waren links im "Baum" (Projekt VBA-Projekt) mehrere Positionen, bei drücken auf ALT-F11 aber nicht das (einizige) Tabellenblatt der Exceldatei markiert.

Wenn ich die Datei nun zu Hause öffne und ALT+F11 drücke, ist links (Projekt VBA-Projekt) tatsächlich nur eine Position - das Tabellenblatt. Und es ist jetzt auch markiert.

Allerdings ist im Hauptbereich jetzt nichts zu sehen, wo ich einen Code einfügen kann. Unter "Datei" und "Bearbeiten" sind auch alle Funktionen grau, also nicht anwählbar.

Was mache ich falsch? Muss ich in Excel eine bestimmte Programmeinstellung vornehmen, um hier arbeiten zu können?

Sorry, aber das ist mein erstes Mal mit VB. Wenn es jetzt zu umständlich wird, als dass Du mich weiter unterstützen möchtest/kannst, dann bedanke ich mich nochmals für die Hilfestellung und verzichte (leider) auf die gewünschte Funktion. Möchte Deine Zeit nicht überbeanspruchen.

Gerne stelle ich auch einen Screenshot zur Verfügung. Wenn Du mir sagst, wie das hier erlaubt ist?! (Dropbox, imageshack etc.)

0
schmiddi1967  10.02.2015, 23:11
@AskingGuyGER

Wie gesagt wenn du mitten in der Tabelle bist wo die Zellen sich verändern sollen und du ALT+F11 drückst bist du automatisch in der Tabelle schon drin. Dann hast du auf der rechten Seite eine leere weiße Seite und da kannst du einfach den Code den ich dir gegeben habe einsetzen.

Wenn du dann oben auf die Diskette zu speichern gehst bekommst du eine Meldung, diese mit NEIN bestätigen und die Mappe als xlsm Datei (Excel Arbeitsmappe mit Makros) abspeichern.

Jetzt wirst du nach dem neu öffnen der Datei gefargt ob die Makros aktiviert werden sollen (Inhalt aktivieren), dieses bitte zulassen. Nun kannst du die Datei ganz normal benutzen und jetzt werden auch nach dem ändern der Felder diese Rot makiert.

Hilft dir das weiter? Wenn nicht kannst du mich über die Emailadresse in meinem Profil gerne kontaktieren.

0

Die bedingte Formatierung ragiert auf Inhalte der Zellen (entspricht..., größer als..., usw.),

sie kann nicht auf Ereignisse reagieren (Änderung von Zellinhalten)

Dein Vorhaben, Änderungen zu erkennen und darzustellen, ist m.E. nur mit Makros (VBA) durchführbar, und auch das ist sehr komplex (alte Werte - neue Werte, welche Zellen wurden verändert, wer nahm die Änderung vor, ...)

Hier sind dann also fundierte Kenntnisse der Programmierung in VBA von Nöten.

Gruß aus Berlin

Woher ich das weiß:Hobby – Jahrelanges programmieren.

Das geht auch sehr viel einfacher: Überprüfen - Änderungen nachverfolgen - Änderungen während der Eingabe protokollieren.

Dann siehst du nicht nur, welche Zelle geändert wurde, sondern auch wann und von wem. Und wenn du willst, kriegst du auch noch einen Änderungverlauf protokolliert.

Kann mir alternativ vielleicht jemand Hilfestellung zur Funktion "Änderung nachverfolgen" geben? Wenn ich dies in EXCEL aktiviere, wird leider nichts markiert bzw. gekennzeichnet.

Auch dies wäre vielleicht eine einfache Lösung, sollten die letzten beiden Vorschläge nicht funktionieren.

Du könntest das Tabellenblatt duplizieren, z.B. als "Tabelle2". Dann kannst du die Original-Tabelle komplett markieren und per bedingte Formatierung alle Zellen einfärben lassen, bei denen die Formel
=A1<>Tabelle2!A1
wahr ist (die Bezüge passen sich an).

Am Ende der Woche überschreibst du dann Tabelle2 mit den Daten der Original-Tabelle.


AskingGuyGER 
Fragesteller
 10.02.2015, 16:17

Wenn die Variante mit VB niht funktioniert, dann werde ich diesen Vorschlag ausprobieren..

Auch hierfür schon mal an dieser Stelle ein "Danke"..

0