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

Änderungen in Excel Arbeitsblatt nachvollziehen

Änderungen in Excel Arbeitsblatt nachvollziehen
28.04.2014 15:23:39
miststueck
Hallo zusammen ich bräuchte bitte dringend Hilfe,
ich möchte alle Änderungen die in einem Excel-Arbeitsblatt vorgenommen werden, in einer bestimmten Farbe sofort sehen können.
Die Zeichenfarbe der Zelle, in der ich eine Änderung ("neuen Text") vornehme, soll grün sein. Zudem soll der "alte Text" der Zelle in blau und durchgestrichen dargestellt werden.
Das soll natürlich automatisiert erfolgen, ohne dass ich händisch die Schriftfarbe anpassen muss.
Ist das irgendwie per VBA möglich? Und wie kann ich das machen?
Dankeschön.

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Änderungen in Excel Arbeitsblatt nachvollziehen
28.04.2014 19:16:06
Matze
Holla Miststück, (Vorname? lach)
reicht dir die in Excel integrierte Funktion nicht aus?
Menue Überprüfen/Änderungen nachverfolgen ?
Warum eine Mappe mit Augengrebsfarben gestallten wenn es einfacher geht.
Matze

Änderungen in Excel Arbeitsblatt nachvollziehen
28.04.2014 19:27:08
Matze
In diese Arbeitsmappe:
Option Explicit
Private Sub Workbook_Open()
With ActiveWorkbook
.HighlightChangesOptions When:=xlAllChanges, Who:="Jeder"
.ListChangesOnNewSheet = False
.HighlightChangesOnScreen = True
End With
End Sub
startet bei jedem öffnen der Datei diese Nachverfolgung.
Matze

Anzeige
ooops, oder doch nicht,...
28.04.2014 20:09:11
Matze
hatte das nur mit dem Recorder aufgezeichnent, so funktioniert es nicht.

AW: ooops, oder doch nicht,...
29.04.2014 10:53:38
miststueck
Schon eine Idee?

Stelle auf offen,..hab keine Lösung,..
29.04.2014 17:33:06
Matze
Hallo immer noch keine Vorname (Tztztzzz),
ANREDE und einen Gruß , auch ein miststuek darf dies tun.
Habe deinen Beitrag auf "offen deklariert",..
mal sehn ob einer der Profis sich diesen annimmt.
Gruß Matze

AW: Stelle auf offen,..hab keine Lösung,..
29.04.2014 17:33:34
Matze
Lol jetzt offen.

AW: Stelle auf offen,..hab keine Lösung,..
29.04.2014 20:49:18
misttsueck
hallo matze,
https://www.herber.de/forum/archiv/1356to1360/t1358903.htm wie du hier siehst habe ich auf anrede und gruß geachtet, nur leider auf den falschen post geantwortet...
aber vielen dank für deine bemühungen.
hoffe dass mir hier irgendjemand weiterhelfen kann.
gruß miststuck

Anzeige
AW: Änderungen in Excel Arbeitsblatt nachvollziehen
28.04.2014 22:25:52
miststueck
hi matze,
danke für deine antwort.
es ist wichtig dass man die veränderungen in dem dokument (nach einer gewissen vorgabe-die bislang manuell erfolgt) sehr schnell nachvollziehen kann, da es sich um einige tausend hundert zellen handelt. und dafür ist die excel-funtion(überprüfen/Änderungen nachverfolgen) leider nicht ausreichend.
hatte gerade versucht den code zu verwenden und es kam zum laufzeitfehler '1004': Anwendungs- oder objektorientierter Fehler... hast du vielleicht eine andere idee?

AW: Änderungen in Excel Arbeitsblatt kennzeichnen
04.05.2014 13:47:13
fcs
Hallo Miststueck,
nachfolgend Makros zur Überwachung der Selektion und Änderung von Zellen.
nach dem Öffnen der Datei muss Blatt immer erst eine andere Zelle selektiert werden, damit die Altdaten der Zelle zwischengespeichert werden. Zur Zeit werden Änderungen in allen Spalten überwacht - hier musst du ggf. die Case-Zeilen der beiden Makros anpassen.
Gruß
Franz
'Code unter dem Modul des Tabellenblattes, dessen Zellen überwacht werden sollen
Option Explicit
Private objZelle As Range, varAlt As Variant, varAltGesamt
'ich möchte alle Änderungen die in einem Excel-Arbeitsblatt vorgenommen werden, _
in einer bestimmten Farbe sofort sehen können.
'Die Zeichenfarbe der Zelle, in der ich eine Änderung ("neuen Text") vornehme, _
soll grün sein. Zudem soll der "alte Text" der Zelle in blau und durchgestrichen _
dargestellt werden.
Private Const FarbeNeu As Long = 39168 'Grün
Private Const FarbeAlt As Long = 13382400 'Blau
Private Sub Worksheet_Change(ByVal Target As Range)
Dim varNeu
If objZelle Is Nothing Then
'do nothing - mehr als eine Zelle wurde selektiert/geändert
Else
If Target.Cells.Count = 1 Then
Select Case Target.Row
Case Is >= 2 'anpassen, wenn andere Zeilen überwacht werden sollen
Select Case Target.Column
Case Is >= 1  'anpasen, wenn nur bestimmte Spalten überwacht werden sollen
varNeu = Target.Text
Application.EnableEvents = False
If varAlt = varNeu Then 'keine Änderung
With Target
.Font.Strikethrough = False
If varNeu = varAltGesamt Then 'in leere Zelle wurde etwas eingetragen
.Value = "'" & varNeu
Else
.Value = "'" & varAltGesamt
End If
With .Characters(1, Len(varNeu)).Font
.Color = FarbeNeu
End With
With .Characters(Len(varNeu) + 1, Len(varAltGesamt) - Len(varNeu)).Font
.Color = FarbeAlt
.Strikethrough = True
End With
End With
Else
With Target
.Font.Strikethrough = False
.Value = "'" & varNeu & varAlt
With .Characters(1, Len(varNeu)).Font
.Color = FarbeNeu
End With
With .Characters(Len(varNeu) + 1, Len(varAlt)).Font
.Color = FarbeAlt
.Strikethrough = True
End With
End With
End If
Application.EnableEvents = True
End Select
End Select
End If
End If
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim Pos As Integer, strText As String
'ggf. alten Text einer einzelnen selektierten Zelle merken
Set objZelle = Nothing
varAlt = ""
If Target.Cells.Count = 1 Then
Select Case Target.Row
Case Is >= 2 'anpassen, wenn andere Zeilen überwacht werden sollen
Select Case Target.Column
Case Is >= 1 'anpasen, wenn nur bestimmte Spalten überwacht werden sollen
Set objZelle = Target
varAltGesamt = Target.Text
varAlt = ""
With Target
For Pos = 1 To Len(.Text)
If .Characters(Pos, 1).Font.Color  FarbeAlt Then
strText = Left(.Text, Pos)
Else
Exit For
End If
Next
End With
varAlt = strText
End Select
End Select
End If
End Sub

Anzeige
AW: Änderungen in Excel Arbeitsblatt nachvollziehen
04.05.2014 13:58:22
Ewald
Hallo,
so ganz verstehe ich das nicht,entweder bleibt der alte Text erhelten oder es steht neuer drin.
Diesen neuen Text kann man färben, wenn die Eingabe manuell erfolgt.
teste mal so
Code in ein allgemeines Modul
Public Oldtext As String
folgenden Code in diese Arbeitsmappe
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
If Target.Value  Oldtext Then
Target.Font.Color = 3061323
Else
Target.Font.ColorIndex = xlAutomatic
End If
End Sub
Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
Oldtext = Target.Value
End Sub
Gruß Ewald
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige