Collapse column

Autor Thema: Office 2007: VBA Programmcode für Veränderung innerhalb eines Zellbereichs  (Gelesen 1303 mal)

Offline LowP

  • Newbie
  • *
  • Beiträge: 2
    • Profil anzeigen
  • Office-KnowHow: Amateur
  • VBA-KnowHow- : Ohne
  • Version [Office] : Office 2007
Hallo liebe Forenmitglieder,

ich hoffe ihr könnt mir helfen mein folgendes Problem zu lösen:

Ich habe eine ExcelTabelle mit einer Personen- und zwei Bemerkungsspalten. Die Zellinhalte (Text) der Bemerkungsspalten werden in unterschiedlichem Umfang und Abständen verändert, bzw. aktualisiert.

Ich möchte nun gerne, dass sobald eine solche Änderung innerhalb einer Zelle dieses Zellbereichs auftritt, der neue Textinhalt automatisch in roter Schrift angezeigt wird. Die Inhalte die bis dahin rot waren ( ob in der selben Zelle oder in einer anderen Zelle deren Inhalt zuletzt geändert wurde) sollen gleichzeitig in schwarzer Schrift umgewandelt werden.

Ich habe schon im Internet recherchiert und glaube dass die Lösung in der Programmierung eines Ereignismakros liegen könnte.

Da ich aber selbst keinerlei Erfahrungen in VBA  oder dergleichen habe und nicht weiß wie ein solcher Programmcode bezogen auf mein Problem aussehen könnte, hoffe ich hier HIlfe zu finden.



Ich bin euch dankbar für jeden Lösungsvorschlag  :)

Viele liebe Grüße




Keine Lösung gefunden? Du kannst Dich gerne an unser erfahrenes Experten-Team wenden und Dein Anliegen in Auftrag geben.
>>> Schnell und einfach ein unverbindliches Angebot anfordern. Per E-Mail an anfrage@excel-inside.de oder per Online-Formular
<<<

!!! Wichtige Information
!!! Dieses Forum steht aus technischen Gründen ab dem 11. September 2019 nur noch im Lesemodus zur Verfügung.
Das NEUE Office-Fragen-Forum kannst du aber unter der gewohnten Domain https://office-fragen.de wie gewohnt nutzen.

- Wir freuen uns auf deinen Besuch im neuen Forum.

Offline Officer

  • Global Moderator
  • Hero Member
  • *****
  • Beiträge: 59.503
    • Profil anzeigen
    • Excel-Inside Solutions
  • Office-KnowHow: Profi
  • VBA-KnowHow- : Sehr gut
  • Version [Office] : Office 2019 / Office 365
Antw:Office 2007: VBA Programmcode für Veränderung innerhalb eines Zellbereichs
« Antwort #1 am: Juli 21, 2014, 07:22:09 Vormittag »
Hallo LowP,

mit dem folgenden VBA-Code lässt sich dein Problem lösen.

Code: Visual Basic
  1. Private Sub Worksheet_Change(ByVal Target As Range)
  2. '** Wird bei jeder Änderung ausgeführt
  3.  
  4. Set rngZellen = ActiveSheet.Range("A2:C21")
  5.  
  6. '** Definition des Zellbereichs für die Änderungen
  7. 'If Not Application.Intersect(Target, Range("A2:C21")) Is Nothing Then
  8. If Not Application.Intersect(Target, rngZellen) Is Nothing Then
  9.  
  10.   '** Zuerst rote Schriftfarbe im definierten Zellbereich entfernen
  11.  rngZellen.Font.ColorIndex = xlAutomatic
  12.  
  13.   '** Geänderte Zelle mit roter Schriftfarbe belegen
  14.  Target.Font.ColorIndex = 3
  15.  
  16. End If
  17. End Sub
  18.  

Da es sich um eine Ereignisprozedur handelt, muss der Code in dem Codeblatt des Tabellenblattes eingefügt werden, in dem er ausgeführt werden soll.
Ich habe die Beispieldatei als Anlage beigefügt.

Gruß Alois
Weitere Informationen, Tipps & Tricks findest du auf Excel-Inside.de
Bitte erfolgreich beantwortete Fragen als gelöst kennzeichnen -  zur Anleitung

Offline LowP

  • Newbie
  • *
  • Beiträge: 2
    • Profil anzeigen
  • Office-KnowHow: Amateur
  • VBA-KnowHow- : Ohne
  • Version [Office] : Office 2007
Antw:Office 2007: VBA Programmcode für Veränderung innerhalb eines Zellbereichs
« Antwort #2 am: Juli 22, 2014, 22:11:52 Nachmittag »
Hallo Alois,

erstmal vielen vielen Dank für deine Antwort, die eine einwandfreie Lösung zu meinem geschilderten Problem darstellt.


Allerdings ist mir selbst aufgefallen, dass sich mein Problem doch noch ein wenig komplexer darstellt.
 Denn es ist teilweise so dass ich bei der Bearbeitung der Tabelle manchmal an mehreren Zellen Änderungen vornehmen. Ist es auch möglich die Zellen so zu programmieren, dass alle neuen Änderungen die ich bei verschiedenen Zellen bei innerhalb Arbeitsvorgang vornehme rot gemacht werden? Die Umwandlung der "alten" Änderungen soll trotzdem beibehalten werden.

Der Hintergrund des ganzen Prozedere ist der, dass derjenige der Tabelle öffnet anhand der Farbe sofort die neuen Zelleinträge erkennt, die zuletzt vorgenommen werden.

Wenn du hierfür vllt auch eine Lösung weißt wäre das wirklich super  :)

Viele liebe Grüße
LowP
 

Wenn du dich noch intensiver mit Excel beschäftigen möchtest, dann empfiehlt sich ein Online-Kurs,
in dem du sehr viel über Excel erfährst und das gelernte umgehend in der Praxis anwenden kannst.