Microsoft Excel

Herbers Excel/VBA-Archiv

Farbe ändern mit VB | Herbers Excel-Forum


Betrifft: Farbe ändern mit VB von: Jasper
Geschrieben am: 11.01.2010 22:18:09

Moin und Hallo,
komme ohne VB wohl nicht weiter, da bedingte Formatierung nicht mehr reicht.(6Farben)
In einer Tabelle : 240 Namen mit Geb-Datum werden täglich bestimmt Angaben gemacht. (anwesend, krank, früh, spät usw.).So dass immer in der Spalte L je Zeile ein anderer Wert angeben wird. In Spalte L kann je Zeile 0(Null),A,B,C,D oder E stehen. Damit man sie besser unterscheiden kann wäre 0=gelb,A=hellgrün,B=grün,C=blau,D=hellrot,E=rot sinnvoll. Pro Zeile müsste die Farbe je Ergebnis (aus L) in den Spalten C,D,E,L,M entsprechen geändert werden.
Wer kann helfen?
Danke im Voraus.

  

Betrifft: Beispiel hochladen.... von: Ramses
Geschrieben am: 11.01.2010 22:23:36

Hallo

... um diese Uhrzeit reicht mein Abstraktionsvermögen leider nicht mehr aus um deine Frage zu verstehen

Gruss Rainer


  

Betrifft: AW: Farbe ändern mit VB von: Josef Ehrensberger
Geschrieben am: 11.01.2010 22:31:44

Hallo Jasper,

in das Modul der Tabelle.

' **********************************************************************
' Modul: Tabelle1 Typ: Element der Mappe(Sheet, Workbook, ...)
' **********************************************************************

Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)
  Dim lngColor As Long
  With Target(1, 1)
    If .Column = 12 And .Row > 1 Then
      Select Case .Value
        Case 0
          lngColor = 6
        Case "A"
          lngColor = 35
        Case "B"
          lngColor = 4
        Case "C"
          lngColor = 5
        Case "D"
          lngColor = 7
        Case "E"
          lngColor = 3
        Case Else
          lngColor = xlNone
      End Select
    End If
    Union(Range(Cells(.Row, 3), Cells(.Row, 5)), Range(Cells(.Row, 12), Cells(.Row, 13))).Interior.ColorIndex = lngColor
  End With
  
End Sub



Gruß Sepp



  

Betrifft: AW: Farbe ändern mit VB von: Jasper
Geschrieben am: 12.01.2010 14:26:49

Hallo Sepp,
danke für die schnelle Arbeit !!!!
Werd jetzt mal schauen, wie ich VB einbauen kann, hab da wenig Erfahrung.
Melde mich, sobald es klappt!
Grüße Jasper


  

Betrifft: AW: Farbe ändern mit VB von: Jasper
Geschrieben am: 12.01.2010 15:04:41

Hallo Sepp,
ich hab's hinbekommen! VB läuft….es funktioniert fast tipp topp!
Nur.... da in L eine Formel (wenn/dann) steht und keine Eingaben gemacht werden, geht’s leider nicht 100%ig.
Wie kann man das ändern, dass die Farbenvergabe pro Zeile auch läuft, wenn sich der Wert in L aufgrund der Abfrage(Formel) in L ändert ????
Gruß Jasper
Und 1000 Dank im Voraus!!!!


  

Betrifft: AW: Farbe ändern mit VB von: Jasper
Geschrieben am: 12.01.2010 22:50:07

Hallo Sepp,
ich hab's hinbekommen! VB läuft….es funktioniert fast tipp topp!
Nur.... da in L eine Formel (wenn/dann) steht und keine Eingaben gemacht werden, geht’s leider nicht 100%ig.
Wie kann man das ändern, dass die Farbenvergabe pro Zeile auch läuft, wenn sich der Wert in L aufgrund der Abfrage(Formel) in L ändert ????
Gruß Jasper
Und 1000 Dank im Voraus!!!!


  

Betrifft: AW: Farbe ändern mit VB von: Josef Ehrensberger
Geschrieben am: 13.01.2010 16:44:16

Hallo Jasper,

welche Eingabe bewirkt den die Änderung in Spalte L, bzw. wie sieht die Formel in Lx aus.


Gruß Sepp



  

Betrifft: AW: Farbe ändern mit VB von: Jasper
Geschrieben am: 13.01.2010 19:10:05

Hallo Sepp,
hier die Formel aus >L<:
=WENN(UND(F43=1;G43=0);"A";WENN(UND(G43=1;E43<$D$331);"B";WENN(UND(G43=1;E43<$D$332);"C"; WENN(UND(G43=1;E43<$D$333);"D";WENN(UND(G43=1;E43>=$D$334);"E";0)))))
> über Altersangaben erfolgt Gruppeneinteilung> Anwesend 0 oder 1
Danke im Voraus.
Jasper


  

Betrifft: AW: Farbe ändern mit VB von: Josef Ehrensberger
Geschrieben am: 13.01.2010 19:31:57

Hallo Jasper,

' **********************************************************************
' Modul: Tabelle1 Typ: Element der Mappe(Sheet, Workbook, ...)
' **********************************************************************

Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)
  Dim lngColor As Long
  If Not Intersect(Target, Columns("E:G")) Is Nothing Then
    With Target(1, 1)
      If .Row > 1 Then
        With Cells(.Row, 12)
          Select Case .Value
            Case 0: lngColor = 6
            Case "A": lngColor = 35
            Case "B": lngColor = 4
            Case "C": lngColor = 5
            Case "D": lngColor = 7
            Case "E": lngColor = 3
            Case Else: lngColor = xlNone
          End Select
          Union(Range(Cells(.Row, 3), Cells(.Row, 5)), Range(Cells(.Row, 12), _
            Cells(.Row, 13))).Interior.ColorIndex = lngColor
        End With
      End If
    End With
  End If
End Sub



Gruß Sepp



  

Betrifft: AW: Farbe ändern mit VB von: Jasper
Geschrieben am: 13.01.2010 21:18:01

Hallo Sepp,
danke erstmal für die tolle Arbeit!
Jetzt ist nur das Problem, dass alte Angaben, die aktuell nicht bearbeitet werden, also keine Änderung erfahren, dass sich dort auch keine Farbe ändert, also alles in weiß bleibt, obwohl sie ein A,B,C,D,E oder 0 in L stehen haben.....??? was tun ????
Eine Farbezuodung entsteht erst dann, wenn Änderungen stattfinden und die Formel in L eine Änderung bzw. ein Ergebnis aktuell neu, wenn auch gleich berechnent und benennt.
Gruß Jasper


  

Betrifft: AW: Farbe ändern mit VB von: Josef Ehrensberger
Geschrieben am: 13.01.2010 21:22:44

Hallo Jasper,

dann lass zuerst mal diesen Code drüberlaufen. (Bereich anpassen!)

Sub faerben()
  Dim lngColor As Long
  Dim rng As Range
  For Each rng In Range("L2:L100") 'Bereich anpassen!
    Select Case rng.Value
      Case 0: lngColor = 6
      Case "A": lngColor = 35
      Case "B": lngColor = 4
      Case "C": lngColor = 5
      Case "D": lngColor = 7
      Case "E": lngColor = 3
      Case Else: lngColor = xlNone
    End Select
    Union(Range(Cells(rng.Row, 3), Cells(rng.Row, 5)), Range(Cells(rng.Row, 12), _
      Cells(rng.Row, 13))).Interior.ColorIndex = lngColor
  Next
End Sub



Gruß Sepp



  

Betrifft: AW: Farbe ändern mit VB von: Jasper
Geschrieben am: 13.01.2010 21:44:06

Hallo Sepp !
Perfekt ! Ich bin glücklich !!!!!
1000 Dank !!


  

Betrifft: Bis xl11 kann man in einer Zelle unter... von: Luc:-?
Geschrieben am: 11.01.2010 22:39:44

...Zuhilfenahme der (Bedingt-)Formatierung 4 verschiedene Zell- und 8 verschiedene Schriftfarben realisieren ohne VBA bemühen zu müssen, falls dir das lieber wäre, Jasper...!
Gruß Luc :-?


  

Betrifft: AW: Bis xl11 kann man in einer Zelle unter... von: Jasper
Geschrieben am: 11.01.2010 22:50:00

Hallo Luc,
4 Farben ok, aber wie dann noch 8 Schriftfarben ?
Also 4x8= 32 Wahlmöglichkeiten oder wie ?
Gruß Jasper


  

Betrifft: hier eine Beispieldatei von: Jasper
Geschrieben am: 11.01.2010 22:59:40

Hallo.
Hier eine Beispieldatai.

https://www.herber.de/bbs/user/67145.xls

In D wird entsprechend A,K,U,L eingetippt.
In E sagt "er" mir wer kommt.
Wunsch: Die Farben aus Zeile 10-14 sollen übernommen werden und Krank(-) sollte z.B. Lila sein.
Die Farbe sollte je Zeile in A,B,C und E zu sehen sein.
Grüße
Jasper


  

Betrifft: Die 3 Bedingtformate wdn auch für die... von: Luc:-?
Geschrieben am: 11.01.2010 23:33:04

...Schriftfarben benötigt, könnte man höchstens mit Zellfarben kombinieren, Jasper...
Die unbedingte Schriftfarbe ist dabei für Fehlerwerte reserviert; also 3x aus Bedingtformat + 1x Urfarbe (für Fehler) + 4x aus normaler Formatierung [frb1][>0]#;[frb2][<0]#;[frb3][=0]0;[frb4]@ ⇒ 8.
Das Textformat kann dann per BedingtFormat um 3 Varianten erweitert wdn. Bei Interesse stelle ich dir nachher mal ein Bsp ein... Deine Datei sehe ich dann auch erst später an...
Gruß Luc :-?


  

Betrifft: Hier das Bsp f.das Mögliche unter xl bis Vs11,... von: Luc:-?
Geschrieben am: 12.01.2010 01:49:02

...Jasper & Interessenten...



Gruß Luc :-?

Deine Datei sehe ich mir jetzt mal an, kann aber nichts versprechen...


  

Betrifft: AW: Hier das Bsp f.das Mögliche unter xl bis Vs11,... von: Jasper
Geschrieben am: 12.01.2010 14:30:51

Hallo Luc,
danke für die Tolle Idee ! Genial !
Ich brauche aber bestimmt noch ein paar Tage, bis ich alles verstanden habe....
Nochmals Danke !
Gruß Jasper


  

Betrifft: Bitte sehr! Viel Spaß! Gruß owT von: Luc:-?
Geschrieben am: 12.01.2010 15:20:08

:-?


  

Betrifft: Und hier noch eine Farbbalkendemo... von: Luc:-?
Geschrieben am: 12.01.2010 04:43:28

...anhand deiner Mappe, Jasper.
Falls dir das nicht reicht, solltest du auf Sepp's Vorschlag zurückkommen, den du zumindest quittieren solltest.
Morn, Luc :-?


  

Betrifft: Der Vollständigkeit halber habe ich... von: Luc:-?
Geschrieben am: 13.01.2010 02:00:23

...hier nochmals einen Vorschlag für die Tabelle, Jasper...
Dabei habe ich in der Balkenspalte E zusätzlich das Horizontalformat Ausfüllen benutzt, was kürzere benutzerdefinierte Formate und Formeln zulässt.
Gruß Luc :-?


  

Betrifft: AW: Der Vollständigkeit halber habe ich... von: Jasper
Geschrieben am: 13.01.2010 12:46:15

Hallo Luc,
Prima Sache! Und das ohne VB!Super!
Leider läuft das VB von Sepp nicht, da in >L< eine Formel steht und keine Eingaben gemacht werden..Wie kann ich Sepp das mitteilen????
Gruß Jasper und nochmals 1000 Dank


  

Betrifft: Sprich ihn doch einfach mal in einem aktuellen... von: Luc:-?
Geschrieben am: 13.01.2010 15:22:44

...Thread, an dem er beteiligt ist, mit Link hierher an, Jasper.
Ist zwar nicht unbedingt üblich, ich bin da kein nachzuahmendes Bsp ;-), aber verzeihlich. Hoffentlich ist er nicht „verschnupft“ und meidet das hier... Vermutlich ist er aber eher mit aktuelleren, lohnenderen Aufgaben befasst. Er antwortet idR nämlich öfter als ich...
Gruß Luc :-?
PS: Schön, dass dir meine Lösung auch gefällt... ;-)


Beiträge aus den Excel-Beispielen zum Thema "Farbe ändern mit VB"