Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Excel vba, ganze Zeile 1 bis 1000 einfärben, keine Bedingte Formatierung
#1
Hallo Leute,

bin auf der Suche nach einem VBA-Code wo ich die ganzen Zeilen von 1 bis 1000, in dieser Reihenfolge einfärben kann

1.Zeile    Rows.EntireRow.Interior.ColorIndex = 35
2.Zeile    Rows.EntireRow.Interior.ColorIndex = 37
3.Zeile     Rows.EntireRow.Interior.ColorIndex = 0

4.Zeile Rows.EntireRow.Interior.ColorIndex = 35
5.Zeile Rows.EntireRow.Interior.ColorIndex = 37
6.Zeile Rows.EntireRow.Interior.ColorIndex = 0

Danke für die Hilfe

t
Antworten Top
#2
Sub TripleChange(): For i = 1 To 1000
Rows(i).EntireRow.Interior.ColorIndex = -(i Mod 3 = 1) * 35 - (i Mod 3 = 2) * 37
Next: End Sub
Antworten Top
#3
@LC

Was ist entirerow mehr als row ??


Code:
For j=1 to 1000
  Usedrange.rows(j).interior.colorindex= 2*(j mod 3) - 33 *((j Mod 3) <> 0)
next
Zum übersetzen von Excel Formeln:

http://dolf.trieschnigg.nl/excel/index.p...gids=en+de
Antworten Top
#4
Ich kenne mich in VBA nicht so gut aus, snb. Gedacht habe ich es mir aber auch; war nur zu faul zum Testen.

Deine Booleans sind zwar schick, aber es wird etwas clumsy, wenn OP andere ColorIndizes wählt ;)
Antworten Top
#5
@LC

Nur für dich:

Code:
For j=1 to 1000
  Usedrange.rows(j).interior.colorindex = choose(j mod 3 + 1,35,37,0)
next
oder
Code:
For j=1 to 1000
  Usedrange.rows(j).interior.colorindex = Array(35,37,0)(j mod 3)
next
Zum übersetzen von Excel Formeln:

http://dolf.trieschnigg.nl/excel/index.p...gids=en+de
Antworten Top
#6
Ist tatsächlich wertvoll für mich, denn Choose (statt WorksheetFunction.Choose) war mir nicht bekannt. :) Danke, snb!
Antworten Top
#7
danke Euch

ist es möglich anstatt colorindex, einen RGB Wert zu benutzen, rgb hat mehr als excel selbst 
Antworten Top
#8
Mit dem Makrorekorder siehst Du es, wenn Du eine erweiterte Farbe mischst.
Antworten Top
#9
...andersrum gefragt:

Mit dem Makrorekorder bekomme ich 


    With Selection.Interior
        .ThemeColor = xlThemeColorAccent6

        .TintAndShade = 0.599993896298105



und
        .ThemeColor = xlThemeColorAccent5

        .TintAndShade = 0.599993896298105



wie kann ich in dem Code einbinden 
Antworten Top
#10
Ich wollte auf .Color statt .ColorIndex oder .ThemeColor hinaus:

https://www.excel-vba-lernen.de/23-farben (auch RGB!)
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste