Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
960to964
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
960to964
960to964
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Zellen einfärben per VBA?

Zellen einfärben per VBA?
22.03.2008 00:05:00
Selma
Hallo Leute,
wie kann ich per VBA die Zelle in Spalte P wie folgt mit Füllfarben einfärben:
- bei einem "B" soll die Zelle in .ColorIndex = 46 dargestellt werden
- bei einem "0" soll die Zelle in .ColorIndex = 4 dargestellt werden
- bei einem "C" soll die Zelle in .ColorIndex = 36 dargestellt werden
Die letzte Zelle mit Inhalt kann in Spalte A ermittelt werden.
Vielen Dank im Voraus!
Viele Grüße,
Selma

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zellen einfärben per VBA?
22.03.2008 00:39:33
chris
Hallo ohne VBA mit der bedingten Formatierung.
Mit VBA etwa so:...
Option Explicit

Sub neu()
Dim x As Integer
For x = 1 To ActiveSheet.Cells(Rows.Count, 16).End(xlUp).Row
If Cells(x, 16) = "B" Then Cells(x, 16).Interior.ColorIndex = 46
If Cells(x, 16) = "O" Then Cells(x, 16).Interior.ColorIndex = 4
If Cells(x, 16) = "C" Then Cells(x, 16).Interior.ColorIndex = 36
Next
End Sub


AW: Zellen einfärben per VBA?
22.03.2008 01:06:00
Lenhard
Moin Selma!
"Guckst Du hiär": https://www.herber.de/bbs/user/50916.xls
Viele Grüße aus dem hohen Norden!! ...und noch ein schönes Osterfest!
Lenhard

Anzeige
AW: Zellen einfärben per VBA?
22.03.2008 01:06:21
Tino
Hallo,
hier etwas mit Bedingter Formatierung.

Sub BedingteFormatierung()
Dim Bereich As Range
Set Bereich = Range("a1:A" & Range("A65500").End(xlUp).Row).Offset(0, 15)
With Bereich.FormatConditions
Bereich.FormatConditions.Delete
'1. Bedingung
.Add Type:=xlCellValue, Operator:=xlEqual, _
Formula1:="B"
Bereich.FormatConditions(1).Interior.ColorIndex = 46
'2. Bedingung
.Add Type:=xlExpression, Operator:=xlEqual, _
Formula1:="=UND(P1=0;P1"""")"
Bereich.FormatConditions(2).Interior.ColorIndex = 4
'3. Bedingung
.Add Type:=xlCellValue, Operator:=xlEqual, _
Formula1:="C"
Bereich.FormatConditions(3).Interior.ColorIndex = 36
End With
Set Bereich = Nothing
End Sub


Gruß
Tino

Anzeige
AW: Zellen einfärben per VBA?
22.03.2008 10:34:56
Hajo_Zi
Hallo Selma,
bei 3 Farben mache es mit Format, bedingter Formatierung, ganz ohne VBA.

AW: Zellen einfärben per VBA?
22.03.2008 11:06:00
Selma
Vielen Dank zusammen !
Es funktioniert prima....
LG,
Selma

AW: Zellen einfärben per VBA?
22.03.2008 14:17:12
Lenhard
Moin Selma!
Ich muss mich noch mal melden, weil mir eine Kleinigkeit bei den Vorschlägen von Chris und mir aufgefallen ist: Wenn Du nachträglich einen anderen Buchstaben in eine mit B, O oder C beschriebene Zelle schreibst, dann bleibt die Hintergrundfarbe erhalten und verschwindet nicht.
Insofern ist Hajos Vorschlag, wenn nur 3 Farben, dann nur mit der "Bedingten Formatierung" zu arbeiten schon sehr sinnvoll!!!
Ich habe mich allerdings noch mal hingesetzt und folgendes gebastelt. "Guckst Du hiär nochmahl":
https://www.herber.de/bbs/user/50927.xls
...damit wird die Hintergrundfarbe wieder "neutralisiert", wenn Du einen anderen Buchstaben als Deine Wünsche in die Zellen der Spalte P schreibst. Weiter ist der Vorteil: Du kannst mehr als drei Buchstaben farblich zuordnen, Du musst dann nur den angepassten Code an richtiger Stelle hinzufügen.
Viele Grüße nochmal!!
Lenhard

Anzeige
AW: Zellen einfärben per VBA?
22.03.2008 17:39:14
Selma
Hallo Lenhard ;)
vielen, vielen Dank !
Ist es möglich den Code so zu ändern, dass die Gross/Klein-Schreibung ignoriert wird?
Das heißt "B" oder "b", "C" oder "c", "O" oder "o" bei allen soll der Code funktionieren.
Viele Grüße,
Selma

AW: Zellen einfärben per VBA?
22.03.2008 17:47:28
Daniel
Hi
nur diese kleine Änderung einfügen:

Select Case UCase(Target.Value)


dann spielt Gross- oder Kleinschreibung keine Rolle mehr, da UCase einen String in Grossbuchstaben umwandelt (in Kleinbuchstaben mit LCase)
Gruß, Daniel

AW: Zellen einfärben per VBA?
22.03.2008 20:26:28
Lenhard
Moin Selma!
Suche den Code bzw. die Zeile "Select Case Target.Value" und tausche diesen mit Daniels Vorschlag ("Select Case UCase(Target.Value)") aus.
Dann müßte es klappen!
Vielen Dank für Deine Rückmeldung und schön das wir Dir helfen konnten!
Viele Grüße und noch schöne Ostern!!
Lenhard

Anzeige
AW: Zellen einfärben per VBA?
22.03.2008 20:28:37
Selma
Danke Daniel !
Viele Grüße,
Selma

302 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige