Farbe von Zelle mit VBA abfragen

Hallo,
wie kann ich per VBA die Farbe einer bestimmten?
Ich komm nicht drauf…

Danke und Gruß

Marcel

Wie geht man in solchen Fällen vor?

  • Man erinnert sich, dass eine Zelle eigentlich ein Range ist.
  • Man guckt in der Hilfe nach, was ein Range-Objekt alles für Eigenschaften hat.
  • Man findet nichts mit „Color“ oderso, gibt aber nicht auf.
  • Man vermutet, dass hinter „Interior“ was hilfreiches stecken könnte.
  • Man erkennt, dass man recht hat, denn man findet „Color“ und „ColorIndex“.

Was der praktische Unterschied zwischen den beiden war, weiss ich gar nicht mehr. Ich benutze immer den Index. Welche Farb welche Nummer hat, das steht in der Hilfe. Einfach mit dem Cursor auf „ColorIndex“ und [Strg]+[F1] drücken.

ActiveCell.Interior.ColorIndex = 3 'Roter Hintergrund

Kristian

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Hallo Kristian

Wie geht man in solchen Fällen vor?

  • Man erinnert sich, dass eine Zelle eigentlich ein Range ist.
  • Man guckt in der Hilfe nach, was ein Range-Objekt alles für
    Eigenschaften hat.
  • Man findet nichts mit „Color“ oderso, gibt aber nicht auf.

Ja, bis dahin kam ich auch

  • Man vermutet, dass hinter „Interior“ was hilfreiches stecken
    könnte.

Nein, dem war leider nicht so!!!

Aber jetzt weiß ich ja für nächste bescheid,
besten Dank und Gruß

Marcel

Aber jetzt weiß ich ja für nächste bescheid,
besten Dank und Gruß

Über meine kleine (scherzhafte) Atacke hatte ich ganz vergessen zu schreiben, was ich eigentlich noch sagen wollte: Nimm doch einfach eine Farbänderung als Makro auf, dann hast Du alles sofort und ohne jedes Vermuten und Überlegen. Dieses Verfahren wende ich oft und fast immer mit Erfolg an, gerade, wenn ich ein Detail vergessen habe.

Kristian

Hallo,

den „ColorIndex“ kannst Du wie jede andere Eigenschaft einfach lesen, z.B.:

ActiveCell = Selection.Interior.ColorIndex

wobei „Selection“ z.B. Deine gerade aktive Zelle ist, deren Hintergrundfarbe Du wissen willst. „ActiveCell“ kann natürlich auch eine beliebige Variable vom Typ Integer sein.

Gruß, Stucki