Office - Word, Excel und Co. 9.751 Themen, 41.573 Beiträge

Excel2003 Hintergrundfarbe in Formel

Edgar Rau / 2 Antworten / Flachansicht Nickles

Hallo zusammen,

ich erstelle gerade eine Arbeitsübersicht für eine Bekannte in Excel. Sie kann Frühdienst, Spätdienst, Frei, Sonderdienst u.s.w. eintragen (es wären insgesamt 8 unterschiedliche Einträge.

Ich möchte nun, dass der Hintergrund der Zelle für jeden unterschiedlichen Eintrag eine andere Hintergrundfarbe hat. Mit der bedingten Formatierung klappt es ja prima, allerdings nur für 3 Bedingungen.

Kann ich das eventuell mit einer WENN Formel realisieren oder müsste ich ein Makro schreiben?

Für jede Hilfestellung bedanke ich mich im Voraus!

Gruß Edgar

Wer brauchen ohne zu gebraucht, braucht brauchen gar nicht zu gebrauchen
bei Antwort benachrichtigen
Edgar Rau Nachtrag zu: „Excel2003 Hintergrundfarbe in Formel“
Optionen

Hallo Volker,

vielen Dank für Deinen Hinweis, ich habe jetzt ein Script im Internet gefunden und in meine Excel Datei eingefügt. Ich musste es nur noch auf meine Bedürfnisse anpassen. Jetzt klappt alles wunderbar.

Wenn meine Bekannte jetzt in Zelle C9 klickt, öffnet sich eine Liste, aus der sie einen Eintrag auswählen kann. Sofort erscheint in der Zelle links daneben die von mir im Script gewünschte Hintergrundfarbe.

Für alle, die das gleiche Problem haben, hier meine Vorgehensweise:

Ich habe in Excel die Datei geöffnet und den Visual Basic Editor gestartet. Dann habe ich im linken Fenster auf 'Diese Arbeitsmappe' geklickt und rechts folgenden Code eingefügt:

Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
Call Zellenfarbe
End Sub


Danach ein neues Modul eingefügt und folgenden Code eingetragen:

Option Explicit

Sub Zellenfarbe()
Dim rngZelle As Range, strText As String
ActiveSheet.Range("C9:C39").Interior.ColorIndex = 0
For Each rngZelle In ActiveSheet.Range("C9:C39")
Select Case rngZelle.Value
Case "Urlaub"
Range("B" & rngZelle.Row).Interior.ColorIndex = 3
Case "Frei"
Range("B" & rngZelle.Row).Interior.ColorIndex = 4
Case "Feiertag"
Range("B" & rngZelle.Row).Interior.ColorIndex = 5
Case "Krank"
Range("B" & rngZelle.Row).Interior.ColorIndex = 6
Case "Frühdienst"
Range("B" & rngZelle.Row).Interior.ColorIndex = 7
Case "Spätdienst"
Range("B" & rngZelle.Row).Interior.ColorIndex = 8
Case "Wochenende"
Range("B" & rngZelle.Row).Interior.ColorIndex = 9
Case "Ü-Abbau"
Range("B" & rngZelle.Row).Interior.ColorIndex = 10
Case ""
Range("B" & rngZelle.Row).Interior.ColorIndex = 0
End Select
Next
End Sub



Gruß Edgar


P.S. Die Excel Datei darf nicht geschützt sein.

Wer brauchen ohne zu gebraucht, braucht brauchen gar nicht zu gebrauchen
bei Antwort benachrichtigen