Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Zellbereiche färben

Forumthread: Zellbereiche färben

Zellbereiche färben
ptonka
Hallo zusammen,
folgendes Problem:
Ich habe eine lange Liste von Produkten mit unterschiedlichen Produktkategorien.
Die Liste umfasst die Spalten A bis H.
In der Spalte Produktkategorie stehen sich wiederholende Angaben, welche aber gruppiert sind.
Also z.B.
Zeile 1 Produktkategorie
Zeile 2 Pflanzen
Zeile 3 Pflanzen
Zeile 4 Pflanzen
Zeile 5 Gemüse
Zeile 6 Gemüse
Zeile 7 Blumen
Zeile 8 Blumen
Zeile 9 Blumen
u.s.w.
Ich benötige nun ein Makro, welches mir in Abhängigkeit von der Produktkategorie den jew. Zeilenbereich (von Spalte A bis H) abwechselnd blau bzw. gelb einfärbt, so dass jede Produktkategorie farblich abgegrenzt wird. D.h. im obigen Beispiel sollten der Bereich A2:H4 (Pflanzen) blau gefärbt werden, der Bereich danach A5:H6 (Gemüse) gelb - der Bereich danach (Blumen) A7:H9 wiederum blau - und so weiter - immer abwechselnd. Leider gelingt mir das Makro nicht, so dass ich auf Eure Hilfe abgewiesen bin. Bei über 16.000 Einträgen ist das händisch ein wenig aufwändig.
Danke im Voraus,
Ptonka
Anzeige

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
Weshalb VBA ? - Geht auch per Bed.Formatierung
29.07.2011 15:15:12
NoNet
Hallo Ptonka,
auch wenn ich ein VBA-Fan bin schlage ich Dir hier eine Lösung mit "Bordmitteln" (Bedingte Formatierung) vor :
Markiere den Datenbereich (ohne die Überschriften) - z.B. A2:H10 und wähle "Format - Bedingte Formatierung" aus.
Wähle als "Bedingung 1" Formel ist aus und gib folgende Funktion ein :
=REST(SUMME(1/ZÄHLENWENN($A$2:$A2;$A$2:$A2));2)
Wähle dann per "Format... - Muster" eine Hintergrundfarbe aus.
Füge eine 2.Bedingung hinzu (wieder Formel ist) und gib folgende Funktion ein :
=REST(SUMME(1/ZÄHLENWENN($A$2:$A2;$A$2:$A2));2)=1
und wähle erneut per "Format... - Muster" eine Hintergrundfarbe aus.
Und so könnte dann das Ergebnis aussehen :
Userbild
Gruß, NoNet
Exceltreffen 28.-30.10.2011 in Chemnitz
Ein Treffen für alle Excel-Freunde und Besucher deutschsprachiger Excel-Foren.
Alle Infos - Programm - Anmeldung - Teilnehmerliste etc. gibt es auf
http://www.exceltreffen.de/index.php?page=211
Wir freuen uns auf euch...

Anzeige
Kleine Korrektur der Bed.Formatierung
29.07.2011 15:17:59
NoNet
Sorry Ptonka,
da war ein kleiner Fehler drin: Beide Funktionen ergaben natürlich das gleiche Ergebnis !
Ändere eine der beiden Funktionen folgendermassen ab :
=REST(SUMME(1/ZÄHLENWENN($A$2:$A2;$A$2:$A2));2)=0
Jetzt sollte es "flutschen" ;-)
Salut, NoNet
Exceltreffen 28.-30.10.2011 in Chemnitz
Ein Treffen für alle Excel-Freunde und Besucher deutschsprachiger Excel-Foren.
Alle Infos - Programm - Anmeldung - Teilnehmerliste etc. gibt es auf
http://www.exceltreffen.de/index.php?page=211
Wir freuen uns auf euch...

Anzeige
Bei mir will die Formel nicht so richtig
29.07.2011 17:35:09
Matthias
Hallo Nonet,
habe Office 2010 und ein Beispieldatei angefügt mit deiner Formel,
irgentwie funktioniert die nicht so wie sie sollte.
Liegt das an der Office Version ?
Ich Lass mal die Frage offen, eventuell kommt noch wer mit VBA Lösung , wäre nett.
Schau mal bitte nach, Danke
Datei: https://www.herber.de/bbs/user/75940.xlsx
Gruß Matthias
Anzeige
Doppelt gerundet hält besser ;-))
29.07.2011 20:49:03
NoNet
Hallo Matthias,
das Problem ist hier nicht die Funktion selbst, sondern der interne Rechengenauigkeit, die zu Rundungsfehlern führt, denn die Matrizensumme ergibt eben nicht immer GENAU 0 oder 1 sondern auch mal 0,0000000131 oder 0,999999784 oder auch 1,00000012 - und das entspricht eben nicht den in der Bedingten Formatierung angegebenen Werten 0 oder 1 !!
Excel rechnet hier exakter wenn man sowohl die einzelnen Matrixergebnisse wie auch das Endergebnis auf 0 Stellen rundet. Probiere es daher also mal mit folgenden Funktionen :
=RUNDEN(REST(RUNDEN(SUMME(1/ZÄHLENWENN($A$1:$A2;$A$1:$A2));0);2);0)=0
und :
=RUNDEN(REST(RUNDEN(SUMME(1/ZÄHLENWENN($A$1:$A2;$A$1:$A2));0);2);0)=1
Das klappt bei mir fehlerfrei ! - "Doppelt gerundet" hält ja bekanntlich auch besser ;-))
Salut, NoNet
Exceltreffen 28.-30.10.2011 in Chemnitz
Ein Treffen für alle Excel-Freunde und Besucher deutschsprachiger Excel-Foren.
Alle Infos - Programm - Anmeldung - Teilnehmerliste etc. gibt es auf
http://www.exceltreffen.de/index.php?page=211
Wir freuen uns auf euch...

Anzeige
AW: Doppelt gerundet hält besser ;-))
02.08.2011 13:01:41
ptonka
Hallo an alle,
vielen Dank für die Tipps. Hat geklappt (nach dem runden) !
Obwohl ich mir auch eine VBA-Lösung gewünscht hätte.
Wenn einer eine Idee hat - nur her damit.
Gruß,
Ptonka
;

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige