Microsoft Excel

Herbers Excel/VBA-Archiv

Zeilen einfärben abhängig von Zellwerten

Betrifft: Zeilen einfärben abhängig von Zellwerten von: Christian Sperber
Geschrieben am: 18.08.2008 16:57:26

Hi Leute

Da ich nicht weiß, wie ich nach meinem Problem suchen kann, beschreibe ich es einfach mal kurz. Vielleicht kann mir ja jemand helfen.

Ich habe ein Excel-File, das xSpalten hat und xZeilen.

In einer Spalte (in meinem Fall Spalte F) stehen die verschiedenen Auftragsnummern, auch schön sortiert.
Jedoch kann eine Auftragsnummer in mehreren Zeilen stehen, da der Auftrag mehrere Positionen hat.

Lange rede, kurzer Sinn: Hier ein Beispiel wie die Salte F aussehen kann.

F1 "Auftrag0801"
F2 "Auftrag0802"
F3 "Auftrag0802"
F4 "Auftrag0802"
F5 "Auftrag0803"
F6 "Auftrag0803"
F7 "Auftrag0804"
F8 "Auftrag0805"
F9 "Auftrag0805"

Soweit so gut.

Nun soll aber Auftragsbezogen die ganze(n) Zeile(n) eingefärbt werden, wie z.B.:

F1 "Auftrag0801" grau
F2 "Auftrag0802" -
F3 "Auftrag0802" -
F4 "Auftrag0802" -
F5 "Auftrag0803" grau
F6 "Auftrag0803" grau
F7 "Auftrag0804" -
F8 "Auftrag0805" grau
F9 "Auftrag0805" grau

Gibt es da irgend ein einfaches VBA-Script oder eine andere Möglichkleit, um mein Problem zu lösen?

Herzlichen Dank
Christian

  

Betrifft: Einfach per VBA von: Backowe
Geschrieben am: 18.08.2008 17:27:54

Hi,

VBA-Code:
Private Sub Worksheet_Change(ByVal Target As Range)
'Code in das entsprechende Tabellenblatt
If Not Intersect(Target, Range("F:F")) Is Nothing And Target.Count = 1 Then
  If Target.Value = "Auftrag0801" Or Target.Value = "Auftrag0803" Or Target.Value = "Auftrag0805" Then
    Target.EntireRow.Interior.ColorIndex = 15
  Else
    Target.EntireRow.Interior.ColorIndex = xlNone
  End If
End If
End Sub
Code eingefügt mit Syntaxhighlighter 4.15


Gruß Jürgen


  

Betrifft: AW: bedingte Formatierung von: Erich G.
Geschrieben am: 18.08.2008 17:56:00

Hallo Christian,
ohne VBA gehts mit bedingter Formatierung z. B. so:

 F
1Auftrag0801
2Auftrag0802
3Auftrag0802
4Auftrag0802
5Auftrag0803
6Auftrag0803
7Auftrag0804
8Auftrag0805
9Auftrag0805

Bedingte Formatierungen der Tabelle
ZelleNr.: / BedingungFormat
F11. / Formel ist =RUNDEN(REST(SUMME(1/ZÄHLENWENN(F$1:F1;F$1:F1));2);0)Abc
F21. / Formel ist =RUNDEN(REST(SUMME(1/ZÄHLENWENN(F$1:F2;F$1:F2));2);0)Abc
F31. / Formel ist =RUNDEN(REST(SUMME(1/ZÄHLENWENN(F$1:F3;F$1:F3));2);0)Abc
F41. / Formel ist =RUNDEN(REST(SUMME(1/ZÄHLENWENN(F$1:F4;F$1:F4));2);0)Abc
F51. / Formel ist =RUNDEN(REST(SUMME(1/ZÄHLENWENN(F$1:F5;F$1:F5));2);0)Abc
F61. / Formel ist =RUNDEN(REST(SUMME(1/ZÄHLENWENN(F$1:F6;F$1:F6));2);0)Abc
F71. / Formel ist =RUNDEN(REST(SUMME(1/ZÄHLENWENN(F$1:F7;F$1:F7));2);0)Abc
F81. / Formel ist =RUNDEN(REST(SUMME(1/ZÄHLENWENN(F$1:F8;F$1:F8));2);0)Abc
F91. / Formel ist =RUNDEN(REST(SUMME(1/ZÄHLENWENN(F$1:F9;F$1:F9));2);0)Abc

Die bed. Formatierung kannst du in F1 eingeben und dann z. B. mit dem Pinsel nach unten kopieren.

Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort


  

Betrifft: AW: bedingte Formatierung von: Erich G.
Geschrieben am: 18.08.2008 18:19:56

Hallo nochmal,
bei der Formel hatte ich nicht bedacht, dass die ganze Zeile eingefärbt werden sollte.

So kannst du die bed. Formatierung auch in alle verwendeten Spalten kopieren:

 EFG
1 Auftrag0801 

Bedingte Formatierungen der Tabelle
ZelleNr.: / BedingungFormat
E11. / Formel ist =RUNDEN(REST(SUMME(1/ZÄHLENWENN($F$1:$F1;$F$1:$F1));2);0)Abc
F11. / Formel ist =RUNDEN(REST(SUMME(1/ZÄHLENWENN($F$1:$F1;$F$1:$F1));2);0)Abc
G11. / Formel ist =RUNDEN(REST(SUMME(1/ZÄHLENWENN($F$1:$F1;$F$1:$F1));2);0)Abc

Und hier noch ne VBA-Lösung (in ein normales Modul, per Hand aufzurufen):

Option Explicit

Sub Eingrauen()
   Dim rng As Range, bolGr As Boolean

   Range("F1").Interior.ColorIndex = 15
   bolGr = True
   For Each rng In Range("F2:F" & Cells(Rows.Count, 6).End(xlUp).Row)
      If rng <> rng.Offset(-1) Then bolGr = Not bolGr
      If bolGr Then
         rng.EntireRow.Interior.ColorIndex = 15
      Else
         rng.EntireRow.Interior.ColorIndex = xlNone
      End If
   Next rng
End Sub

Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort


  

Betrifft: AW: bedingte Formatierung von: Christian Sperber
Geschrieben am: 19.08.2008 08:02:07

Hi Erich

Habs jetzt mit VBA probiert, klappt wunderbar, genauso wie ich es mir vorgestellt habe.
Nun kann ich schön die Aufträge erkennen !!!

Herzlichen DANK !!!
Macht mir das Leben um vieles einfacher !!!


Backowe:
Diese Liste ist ca. 10 A3-Seiten lang, da möchte ich nicht jeden Auftrag händisch eingeben. Trotzdem Danke


  

Betrifft: Sorry, daß meine Glaskugel versagt hat! ;o) oT von: Backowe
Geschrieben am: 19.08.2008 09:18:39




 

Beiträge aus den Excel-Beispielen zum Thema "Zeilen einfärben abhängig von Zellwerten"