Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
624to628
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
624to628
624to628
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Hintergrundfarbe automatisch übernehmen

Hintergrundfarbe automatisch übernehmen
16.06.2005 15:43:51
Martina
Bei einer Bewertung (1=sehr gut (grün), 2=gut (hellgrün), ... 5=mangelhaft (rot)), die ich mit der WENN-Option eingegeben habe, versuche ich die Hintergrundfarbe auch zu übernehmen, das gelingt mir nicht. Mit der bedingten Formatierung komme ich auch nicht weiter, da ich dort nur 3 Optionen zur Verfügung habe. Im Archiv habe ich darüber auch nichts gefunden, wer kann helfen? Danke dafür.

25
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Hintergrundfarbe automatisch übernehmen
16.06.2005 15:45:55
Hajo_Zi
Hallo Martina,
im Archiv gibt es dazu massenhaft Beiträge.
Schaue mal auf meine Homepage da ist ein Beispiel auf der Seite VBA.
Beispieldatei
Falls Code vorhanden wurde dieser getestet unter Betriebssystem XP Home und Excel Version XP 2003 SP1.
Bitte keine Mail, Probleme sollten im Forum gelöst werden.
Microsoft MVP für Excel
Das Forum lebt auch von den Rückmeldungen.
Betriebssystem Windows 2000 SP4 und Excel Version 2000 SP3..



"Wer Rechtschreibfehler findet, darf sie behalten!"
Anzeige
AW: Hintergrundfarbe automatisch übernehmen
16.06.2005 15:52:53
Dominic
Hallo,
mit VBA:

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address <> "$A$1" Then Exit Sub
If Target.Value = 1 Then Target.Interior.ColorIndex = 10
If Target.Value = 2 Then Target.Interior.ColorIndex = 4
If Target.Value = 3 Then Target.Interior.ColorIndex = 36
If Target.Value = 4 Then Target.Interior.ColorIndex = 6
If Target.Value = 5 Then Target.Interior.ColorIndex = 45
End Sub

gruß
Dominic
AW: Hintergrundfarbe automatisch übernehmen
16.06.2005 16:17:01
Dominic
Also,
bei mir wird nur die Zelle A1 betrachtet.
Der Code gehört auch zum Tabellenblatt und nicht in ein anderes Modul.
Gruß
Dominic
Anzeige
AW: Hintergrundfarbe automatisch übernehmen
16.06.2005 16:11:58
Martina
Danke für die Infos. Ich habe beide Varianten ausprobiert, in dem ich die Codes in meine Excel-Tabelle einkopiert habe, funktioniert allerdings nicht - was mache ich denn da falsch?
AW: Hintergrundfarbe automatisch übernehmen
16.06.2005 16:14:18
Hajo_Zi
Hallo Martina,
ich sehe nicht Deine Datei. Ich lehne es ab über das Internet auf Fremde Rechner zu schauen.
Bitte keine Mail, Probleme sollten im Forum gelöst werden.
Microsoft MVP für Excel
Das Forum lebt auch von den Rückmeldungen.
Betriebssystem Windows 2000 SP4 und Excel Version 2000 SP3.


AW: Hintergrundfarbe automatisch übernehmen
16.06.2005 16:42:12
Martina
Ich hab' nicht gewusst, dass man auch eine Datei auf den Server stellen kann. Jetzt ist der erste Versuch fehlgeschlagen, ich probier's gleich nochmal. Funktioniert aber nicht - und nun?
Anzeige
AW: Hintergrundfarbe automatisch übernehmen
16.06.2005 17:25:58
Martina
Hallo Hajo,
ich hab's jetzt mehrmals probiert, die Datei kann ich leider nicht auf den Server stellen. Fällt Die noch was ein?
Danke
AW: Hintergrundfarbe automatisch übernehmen
16.06.2005 17:48:17
Hajo_Zi
Hallo Martina,
die Dateio ddarf nich zu tief in einem Verzeichnis liegen, kein Umlaute usw.
nach dem Hochladen wird Dir der Link angezeigt, diesen kopieren in Zwischenspeicher und zurück zum Beitrag und dort Strg+V
Gruß Hajo
Das Forum lebt auch von den Rückmeldungen.
AW: Hintergrundfarbe automatisch übernehmen
17.06.2005 09:53:48
Martina
Guten Morgen Hajo,
ich probier's jetzt noch mal mit Deinen Angaben. Danke schon mal.
https://www.herber.de/bbs/user/23945.xls
Anzeige
AW: Hintergrundfarbe automatisch übernehmen
17.06.2005 10:17:25
Hajo_Zi
Hallo Martina,
ich lehne den Einsatz von Knackprogrammen ab.
Das VBA Projekt sollte schon zugänglich sein, wenn es um ein VBA Problem geht.
Gruß Hajo
Das Forum lebt auch von den Rückmeldungen.
AW: Hintergrundfarbe automatisch übernehmen
17.06.2005 10:24:55
Martina
Oh Mann, heute ist wirklich nicht mein Tag - Sorry. Das Passwort lautet "lexa".
Danke und sorry für meine "Schusseligkeit"
AW: Hintergrundfarbe automatisch übernehmen
17.06.2005 10:36:19
Hajo_Zi
Hallo Martina,
1. es ist nicht mein Code der zum Einsatz kommt.
2. Formatierst Du Steuelemente in der Tabelle, davon war bisher nicht die Rede. Ich habe jetzt nicht geprüft ob die vorhanden sind.
3. in A1 steht kein Wert von 1 bis 5
Gruß Hajo
Das Forum lebt auch von den Rückmeldungen.
Anzeige
AW: Hintergrundfarbe automatisch übernehmen
17.06.2005 10:54:20
Martina
Hallo Hajo,
ich habe auch Deinen Code probiert, ging leider auch nicht. Ich habe in einer früheren Version "A1" auf meine Zelle "S3Z24" abgeändert, ohne Ergebnis. Auch bei der Namensvergabe war ich erfolglos.
Die formatierten Steuerelemente stammen wahrscheinlich aus einer älteren Vorlage.
Kannst Du mir jetzt einen Tipp geben? Ich bin am Verzweifeln, ich weiß nicht, was ich noch ausprobieren soll!
Danke
AW: Hintergrundfarbe automatisch übernehmen
17.06.2005 11:09:18
Hajo_Zi
Hallo Martina,
folgender Code für Zelle A1

Private Sub Worksheet_Change(ByVal Target As Range)
'* H. Ziplies                                     *
'* 19.07.03, 30.10.03                             *
'* erstellt von Hajo.Ziplies@web.de               *
'* <a href="http://home.media-n.de/ziplies/">http://home.media-n.de/ziplies/</a> *
'   HINTERGRUND
'   für Schrift RaZelle.Font.ColorIndex
Dim RaBereich As Range, RaZelle As Range
' Bereich der Wirksamkeit
Set RaBereich = Range("A1")
'   noch mehr Bereiche
'    Set RaBereich = Union(Range("C7:I26"), Range("L7:R26"), Range("U7:AA26"), Range("AD7:AJ26"))
'   ab Vesion XP braucht der Schutz nicht aufgehoben werden
'   Formatierung bei Schutz kann über Dialog Schutz eingestellt werden
'    ActiveSheet.Unprotect ("Passwort")
For Each RaZelle In Range(Target.Address)
With Range(RaZelle.Address)
If Not Intersect(RaZelle, RaBereich) Is Nothing Then
Select Case RaZelle.Value
Case "1"
.Interior.ColorIndex = 4
Case "2"
.Interior.ColorIndex = 35
Case "3"
.Interior.ColorIndex = 6
Case "4"
.Interior.ColorIndex = 38
Case "5"
.Interior.ColorIndex = 33
Case Else
.Interior.ColorIndex = xlNone
End Select
End If
End With
Next RaZelle
'    ActiveSheet.protect ("Passwort")
Set RaBereich = Nothing
End Sub

Gruß Hajo
Das Forum lebt auch von den Rückmeldungen.
Anzeige
AW: Hintergrundfarbe automatisch übernehmen
17.06.2005 11:09:31
Hajo_Zi
Hallo Martina,
folgender Code für Zelle A1

Private Sub Worksheet_Change(ByVal Target As Range)
'* H. Ziplies                                     *
'* 19.07.03, 30.10.03                             *
'* erstellt von Hajo.Ziplies@web.de               *
'* <a href="http://home.media-n.de/ziplies/">http://home.media-n.de/ziplies/</a> *
'   HINTERGRUND
'   für Schrift RaZelle.Font.ColorIndex
Dim RaBereich As Range, RaZelle As Range
' Bereich der Wirksamkeit
Set RaBereich = Range("A1")
'   noch mehr Bereiche
'    Set RaBereich = Union(Range("C7:I26"), Range("L7:R26"), Range("U7:AA26"), Range("AD7:AJ26"))
'   ab Vesion XP braucht der Schutz nicht aufgehoben werden
'   Formatierung bei Schutz kann über Dialog Schutz eingestellt werden
'    ActiveSheet.Unprotect ("Passwort")
For Each RaZelle In Range(Target.Address)
With Range(RaZelle.Address)
If Not Intersect(RaZelle, RaBereich) Is Nothing Then
Select Case RaZelle.Value
Case "1"
.Interior.ColorIndex = 4
Case "2"
.Interior.ColorIndex = 35
Case "3"
.Interior.ColorIndex = 6
Case "4"
.Interior.ColorIndex = 38
Case "5"
.Interior.ColorIndex = 33
Case Else
.Interior.ColorIndex = xlNone
End Select
End If
End With
Next RaZelle
'    ActiveSheet.protect ("Passwort")
Set RaBereich = Nothing
End Sub

Gruß Hajo
Das Forum lebt auch von den Rückmeldungen.
Anzeige
AW: Hintergrundfarbe automatisch übernehmen
17.06.2005 11:30:39
Martina
Hallo Hajo,
vielen Dank. Ich habe den Code erstmal auf die Zelle C24 umgeschrieben, das lief ganz toll. Allerdings brauche ich die farbige Unterlegung in der Zelle D24.
Nachdem ich Deinen Code so umgeschrieben habe, tut sich leider nichts mehr - Mensch, was mache ich denn da falsch?

Private Sub Worksheet_Change(ByVal Target As Range)
'* H. Ziplies                                     *
'* 19.07.03, 30.10.03                             *
'* erstellt von Hajo.Ziplies@web.de               *
'* <a href="http://home.media-n.de/ziplies/">http://home.media-n.de/ziplies/</a> *
'   HINTERGRUND
'   für Schrift RaZelle.Font.ColorIndex
Dim RaBereich As Range, RaZelle As Range
' Bereich der Wirksamkeit
Set RaBereich = Range("D24")
'   noch mehr Bereiche
'    Set RaBereich = Union(Range("D24:I26"), Range("L7:R26"), Range("U7:AA26"), Range("AD7:AJ26"))
'   ab Vesion XP braucht der Schutz nicht aufgehoben werden
'   Formatierung bei Schutz kann über Dialog Schutz eingestellt werden
'    ActiveSheet.Unprotect ("Passwort")
For Each RaZelle In Range(Target.Address)
With Range(RaZelle.Address)
If Not Intersect(RaZelle, RaBereich) Is Nothing Then
Select Case RaZelle.Value
Case "sehr gut"
.Interior.ColorIndex = 4
Case "gut"
.Interior.ColorIndex = 35
Case "befriedigend"
.Interior.ColorIndex = 6
Case "ausreichend"
.Interior.ColorIndex = 38
Case "mangelhaft"
.Interior.ColorIndex = 33
Case Else
.Interior.ColorIndex = xlNone
End Select
End If
End With
Next RaZelle
'    ActiveSheet.protect ("Passwort")
Set RaBereich = Nothing
End Sub

Anzeige
AW: Hintergrundfarbe automatisch übernehmen
17.06.2005 11:43:21
Hajo_Zi
Hallo Martina,
das liegt an Deiner Excel Version. In Version 97 wird kein Change Ereignis durch ein Drop Down Feld ausgelöst. Dafür habe ich keine Lösung.
Gruß Hajo
Das Forum lebt auch von den Rückmeldungen.
AW: Hintergrundfarbe automatisch übernehmen
17.06.2005 11:45:39
Hajo_Zi
Hallo Martina,
das liegt an Deiner Excel Version. In Version 97 wird kein Change Ereignis durch ein Drop Down Feld ausgelöst. Dafür habe ich keine Lösung.
Gruß Hajo
Das Forum lebt auch von den Rückmeldungen.
AW: Hintergrundfarbe automatisch übernehmen
Martina
Hallo Hajo,
beim Drop-down-Feld funktioniert es doch, nur nicht bei der Zelle daneben?!!
Anzeige
AW: Hintergrundfarbe automatisch übernehmen
17.06.2005 11:55:13
Hajo_Zi
Hallo Martina,
dann dürfte DEine angegeben Version nicht stimmen.
Als Bereich der Wirksamkeit hast Du "D24" angegeben, warum sollte das dann in E24 wirken?
Gruß Hajo
Das Forum lebt auch von den Rückmeldungen.
AW: Hintergrundfarbe automatisch übernehmen
17.06.2005 12:00:37
Martina
Wirksamkeit in D24 ist schon richtig, aber dort läuft es nicht.
C24 ist ein Drop-down-Feld, dort habe ich es zuerst probiert (obwohl nicht nötig), weil Du mir schon die Zahlen 1-5 codiert hattest. Das lief ganz prima.
Als ich dann aber die Wirksamkeit umgeschrieben habe auf D24 und anstatt der Zahlen die Wort sehr gut, gut, usw. eingegeben habe, gings nicht mehr (die Wörter sehr gut, gut usw. werden automatisch eingetragen (Wenn-Funktion).
AW: Hintergrundfarbe automatisch übernehmen
17.06.2005 12:03:26
Hajo_Zi
Hallo Martina,
der Code prüft 1 bis 5 nicht "sehr gut" usw.
Gruß Hajo
Das Forum lebt auch von den Rückmeldungen.
AW: Hintergrundfarbe automatisch übernehmen
17.06.2005 12:07:51
Martina
Hallo Hajo, ich bin's schon wieder. Ich will ja nicht nerven, aber ich komme nicht weiter.
Ich habe doch den Code umgeschrieben, so dass er eigentlich die Wörter sehr gut, gut usw. prüfen sollte, tut er aber nicht. Muss ich da außer dem Austauschen von "1" auf "sehr gut" ... noch etwas umschreiben?
AW: Hintergrundfarbe automatisch übernehmen
17.06.2005 12:11:39
Hajo_Zi
Hallo Martina,
falls Du eine Version über 97 verwendest.

Private Sub Worksheet_Change(ByVal Target As Range)
'* H. Ziplies                                     *
'* 19.07.03, 30.10.03                             *
'* erstellt von Hajo.Ziplies@web.de               *
'* <a href="http://home.media-n.de/ziplies/">http://home.media-n.de/ziplies/</a> *
'   HINTERGRUND
'   für Schrift RaZelle.Font.ColorIndex
Dim RaBereich As Range, RaZelle As Range
' Bereich der Wirksamkeit
Set RaBereich = Range("C24:C46")
'   noch mehr Bereiche
'    Set RaBereich = Union(Range("C7:I26"), Range("L7:R26"), Range("U7:AA26"), Range("AD7:AJ26"))
'   ab Vesion XP braucht der Schutz nicht aufgehoben werden
'   Formatierung bei Schutz kann über Dialog Schutz eingestellt werden
'    ActiveSheet.Unprotect ("Passwort")
For Each RaZelle In Range(Target.Address)
With Range(RaZelle.Address).Offset(0, 1)
If Not Intersect(RaZelle, RaBereich) Is Nothing Then
Select Case RaZelle.Value
Case "1"
.Interior.ColorIndex = 4
Case "2"
.Interior.ColorIndex = 35
Case "3"
.Interior.ColorIndex = 6
Case "4"
.Interior.ColorIndex = 38
Case "5"
.Interior.ColorIndex = 33
Case Else
.Interior.ColorIndex = xlNone
End Select
End If
End With
Next RaZelle
'    ActiveSheet.protect ("Passwort")
Set RaBereich = Nothing
End Sub

Gruß Hajo
Das Forum lebt auch von den Rückmeldungen.
AW: Hintergrundfarbe automatisch übernehmen
17.06.2005 12:57:53
Martina
Hallo Hajo,
vielen, vielen Dank. Du hast mein Wochenende gerettet.
Ich habe den Bereich noch um 2 Felder "ausgeweitet" und das läuft jetzt wie am Schnürchen! Du bist ein Schatz (ups).
Übrigens funktioniert der Code auch mit Excel 97.
Ich wünsche Dir ein supertolles Wochenende (Du hast es Dir redlich verdient)!

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige