Supportnet / Forum / Tabellenkalkulation
Excel Dienstplan automatisch Farben ändern...
Frage
Hallo zusammen. Ich hoffe hier kann man mir helfen.
Ich habe für meine Freundin einen Dienstplan mit Excel erstellt. Für die verschiedenen Schichten werden Buchstaben eingetragen. Beispiel: u=urlaub, f=frühschicht, usw.
Diese sollen dann farblich angepasst werden, damit man schnell einen Überblick hat. Also rot für urlaub, orange für frühschicht, usw.
Es ist jedoch sehr mühselig, das jeden Monat per Hand zu ändern.
Hier nun meine Frage.....
[b]Ist es möglich, das sich die Zellenfarbe (Füllung) automatisch ändert, wenn man z.B. u (für Urlaub) eingibt, dass der Zellenhintergrund dann automatisch rot wird?[/b]
Das wäre eine echte Erleichterung..
Und falls das geht, würde ich mich auch über eine kleine Anleitung freuen :-)
Danke im Voraus.
Gruß,
Stefan
Antwort 1 von BlackUser
Ja, dies geht über die s.g. Bedingte Formatierung
Menüleiste:
Format -> Bedingte Formatierung
dort kann man Eigenschaften für den Zellenwert angeben und auch was er dann wie formatieren soll
Menüleiste:
Format -> Bedingte Formatierung
dort kann man Eigenschaften für den Zellenwert angeben und auch was er dann wie formatieren soll
Antwort 2 von The_Medic
Ja Super !!
Das ging ja schnell mit der Antwort ! :-)
Danke für den super Tip.
Das erleichtert die Sache ungemein *freu*
Gruß,
Stefan
Das ging ja schnell mit der Antwort ! :-)
Danke für den super Tip.
Das erleichtert die Sache ungemein *freu*
Gruß,
Stefan
Antwort 3 von BlackUser
Kein Problem gern geschehen, dafür sind wir ja hier ;o)))))
Antwort 4 von The_Medic
Ich hab gerade gesehen, das man da nur 3 Formatierungen angeben kann..
ich bräuchte aber 5...
ist dies auch möglich?
Gruß,
Stefan
ich bräuchte aber 5...
ist dies auch möglich?
Gruß,
Stefan
Antwort 5 von BlackUser
Hi,
schau mal hier
https://supportnet.de/discussion/listmessages.asp?autoid=159051
schau mal hier
https://supportnet.de/discussion/listmessages.asp?autoid=159051
Antwort 6 von The_Medic
Ah danke.
Leider hab ich null Peilung von VB...
Aber ich denke 3 Formatierungen sollten auch reichen.
Is zwar nicht optimal. Aber was solls :-)
Gruß,
Stefan
Leider hab ich null Peilung von VB...
Aber ich denke 3 Formatierungen sollten auch reichen.
Is zwar nicht optimal. Aber was solls :-)
Gruß,
Stefan
Antwort 7 von weissvonnix
hallo stefan
schau mal HIER.
sollte auch mit null ahnung von vba funktionieren. ersetze einfach die zahlen durch deine kürzel und vergiss nicht, excel zu erlauben, makros auszuführen.
grüße
schau mal HIER.
sollte auch mit null ahnung von vba funktionieren. ersetze einfach die zahlen durch deine kürzel und vergiss nicht, excel zu erlauben, makros auszuführen.
grüße
Antwort 8 von The_Medic
Hallo !
Ich hab das jetzt mal versucht..
So wie es in der Anleitung steht..
Wenn ich dann aber in der Tabelle irgendetwas eingebe, öffnet sich VB mit einer Fehlermeldung:
Fehler beim Kompilieren.
Syntaxfehler.
Ich habe folgendes eingefügt:
Was mache ich falsch?
Gruß,
Stefan
Ich hab das jetzt mal versucht..
So wie es in der Anleitung steht..
Wenn ich dann aber in der Tabelle irgendetwas eingebe, öffnet sich VB mit einer Fehlermeldung:
Fehler beim Kompilieren.
Syntaxfehler.
Ich habe folgendes eingefügt:
Zitat:
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
Select Case Target.Value
Case „Zahlenreihe“ rem für Textstring
Target.Interior.ColorIndex = 1
Case x
Target.Interior.ColorIndex = 2
Case 3
Target.Interior.ColorIndex = 3
Case 4
Target.Interior.ColorIndex = 4
Case 5
Target.Interior.ColorIndex = 5
Case 6
Target.Interior.ColorIndex = 6
Case Else
Target.Interior.ColorIndex = xlColorIndexNone
End Select
End Sub
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
Select Case Target.Value
Case „Zahlenreihe“ rem für Textstring
Target.Interior.ColorIndex = 1
Case x
Target.Interior.ColorIndex = 2
Case 3
Target.Interior.ColorIndex = 3
Case 4
Target.Interior.ColorIndex = 4
Case 5
Target.Interior.ColorIndex = 5
Case 6
Target.Interior.ColorIndex = 6
Case Else
Target.Interior.ColorIndex = xlColorIndexNone
End Select
End Sub
Was mache ich falsch?
Gruß,
Stefan
Antwort 9 von weissvonnix
der code müsste bei dir so aussehen:
"Private Sub Worksheet_Change(ByVal Target As Excel.Range)
Select Case Target.Value
Case u"
Target.Interior.ColorIndex = 1
Case f"
Target.Interior.ColorIndex = 2
... (deine anderen Fälle)
Case Else
Target.Interior.ColorIndex = xlColorIndexNone
End Select
End Sub"
"Private Sub Worksheet_Change(ByVal Target As Excel.Range)
Select Case Target.Value
Case u"
Target.Interior.ColorIndex = 1
Case f"
Target.Interior.ColorIndex = 2
... (deine anderen Fälle)
Case Else
Target.Interior.ColorIndex = xlColorIndexNone
End Select
End Sub"
Antwort 10 von weissvonnix
pardon: supportnet mag meine anführungszeichen nicht?!
es muss natürlich "u" und "f" (usw) heißen.
es muss natürlich "u" und "f" (usw) heißen.
Antwort 11 von The_Medic
Ja, das hab ich von alleine gemerkt *freu*
und es geht jetzt auch.. muss nur die richtigen farben herausfinden.
Danke für die Hilfe
Gruß,
Stefan
und es geht jetzt auch.. muss nur die richtigen farben herausfinden.
Danke für die Hilfe
Gruß,
Stefan
Antwort 12 von weissvonnix
gern geschehen!
Antwort 13 von dralban
Hi,
ich habe das Beispiel versucht nach zu vollziehen:
http://web3.server1.dce4u.de/modules.php?
name=News&file=article&sid=616
1.)
Tabelle 1 habe ich nichts gemacht, d.h. ist leer bei mir.
2.)
Habe die Entwicklungsumgebung (Alt+F11) aufgerufen und dann den Projekt-Explorer (Strg+R)ausgewählt. Dort habe ich ein Doppelklick auf Tabelle 1 gemacht und dann diese Zeilen eingegeben:
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
Select Case Target.Value
Case „Zahlenreihe“ rem für Textstring
Target.Interior.ColorIndex = 1
Case 2
Target.Interior.ColorIndex = 2
Case 3
Target.Interior.ColorIndex = 3
Case 4
Target.Interior.ColorIndex = 4
Case 5
Target.Interior.ColorIndex = 5
Case 6
Target.Interior.ColorIndex = 6
Case Else
Target.Interior.ColorIndex = xlColorIndexNone
End Select
End Sub
Speichern...
3.) Gehe ich jetzt zur Tabelle 1 und geben z.B. den Wert "2" an, dann kommt auch bei mir die Meldung:
"Fehler beim Kompilieren: Syntaxfehler"
Dabei geht die Entwicklungsumgebung auf und die Zeile "Case „Zahlenreihe“ rem für Textstring" ist dabei hervor gehoben.
Was mache ich falsch? Ich benutze doch die Werte 1 bis 6 in der Tabelle 1, die ich in der Entwicklungsumgebung definiert habe.
Danke und frohe Weinachten
dralban
ich habe das Beispiel versucht nach zu vollziehen:
http://web3.server1.dce4u.de/modules.php?
name=News&file=article&sid=616
1.)
Tabelle 1 habe ich nichts gemacht, d.h. ist leer bei mir.
2.)
Habe die Entwicklungsumgebung (Alt+F11) aufgerufen und dann den Projekt-Explorer (Strg+R)ausgewählt. Dort habe ich ein Doppelklick auf Tabelle 1 gemacht und dann diese Zeilen eingegeben:
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
Select Case Target.Value
Case „Zahlenreihe“ rem für Textstring
Target.Interior.ColorIndex = 1
Case 2
Target.Interior.ColorIndex = 2
Case 3
Target.Interior.ColorIndex = 3
Case 4
Target.Interior.ColorIndex = 4
Case 5
Target.Interior.ColorIndex = 5
Case 6
Target.Interior.ColorIndex = 6
Case Else
Target.Interior.ColorIndex = xlColorIndexNone
End Select
End Sub
Speichern...
3.) Gehe ich jetzt zur Tabelle 1 und geben z.B. den Wert "2" an, dann kommt auch bei mir die Meldung:
"Fehler beim Kompilieren: Syntaxfehler"
Dabei geht die Entwicklungsumgebung auf und die Zeile "Case „Zahlenreihe“ rem für Textstring" ist dabei hervor gehoben.
Was mache ich falsch? Ich benutze doch die Werte 1 bis 6 in der Tabelle 1, die ich in der Entwicklungsumgebung definiert habe.
Danke und frohe Weinachten
dralban
Antwort 14 von coros
Hi dralban,
frohes Fest. Damit das bei Dir funktioniert, musst Du das Anführungszeichen vor dem Text Zahlenreihe ändern. Es darf nicht „Zahlenreihe“ sondern muss "Zahlenreihe" lauten (Beachte die beiden Anführungszeichen "").
Schöne Weihnachtsfeiertage noch.
MfG,
Oliver
Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du ein
Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.
frohes Fest. Damit das bei Dir funktioniert, musst Du das Anführungszeichen vor dem Text Zahlenreihe ändern. Es darf nicht „Zahlenreihe“ sondern muss "Zahlenreihe" lauten (Beachte die beiden Anführungszeichen "").
Schöne Weihnachtsfeiertage noch.
MfG,
Oliver
Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du ein
Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.
Antwort 15 von dralban
Danke Coros.
Natürlich auch an alle anderen ein frohes Fest.
Ich habe das mit den Anführungszeichen gemacht, aber es kommt immer noch ein Compile-Fehler.
Ehrlich gesagt waren das meine ersten Geh-Versuche. Denke, daß ich mich erst in Scripts einarbeiten sollte, denn ich weiß ehrlich gesagt überhaupt nicht, warum es nicht klappt.
Danke.
Gr
dralban
Natürlich auch an alle anderen ein frohes Fest.
Ich habe das mit den Anführungszeichen gemacht, aber es kommt immer noch ein Compile-Fehler.
Ehrlich gesagt waren das meine ersten Geh-Versuche. Denke, daß ich mich erst in Scripts einarbeiten sollte, denn ich weiß ehrlich gesagt überhaupt nicht, warum es nicht klappt.
Danke.
Gr
dralban
Antwort 16 von coros
Hi dralban,
lösch mal noch den Text
rem für Textstring
heraus, so dass nur noch als Code
steht. Dann sollte es funktionieren.
MfG,
Oliver
Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du ein
Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.
lösch mal noch den Text
rem für Textstring
heraus, so dass nur noch als Code
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
Select Case Target.Value
Case "Zahlenreihe"
Target.Interior.ColorIndex = 1
Case 2
Target.Interior.ColorIndex = 2
Case 3
Target.Interior.ColorIndex = 3
Case 4
Target.Interior.ColorIndex = 4
Case 5
Target.Interior.ColorIndex = 5
Case 6
Target.Interior.ColorIndex = 6
Case Else
Target.Interior.ColorIndex = xlColorIndexNone
End Select
End Substeht. Dann sollte es funktionieren.
MfG,
Oliver
Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du ein
Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.
Antwort 17 von dralban
Hi, Coros,
super. Vielen Dank..
Du siehst, es ist super einfach und ich habe es nicht hin bekommen. Das zeigt, daß ich mich der Sache widmen werde.
Guten Rutsch...
Gr
dralban
super. Vielen Dank..
Du siehst, es ist super einfach und ich habe es nicht hin bekommen. Das zeigt, daß ich mich der Sache widmen werde.
Guten Rutsch...
Gr
dralban

