Excel Makro Zeichenfarbe in Zelle ausgeben

Geschätzte Community

Ich sollte Daten Zusammenstellen mit einem Excel-Makro.
Die Schleifen-Funktionen funktionieren.

Eine Bedingung ist: Die Zelle in die Kopiert wird darf nicht schwarz sein.

Meine Abfrage lautet: MsgBox(Sheets(„Jan_Dez_Master“).Cells(i, 1).Font.Color)

Die MsgBox gibt immer ein leeres Resultat zurück.

Was mache ich Falsch?

Herzlichen Dank für Deinen Hinweis.
Severin aus Zürich

Hallo Severin

Leider muss ich bei deiner Anfrage passen.
(Mit farbigen Feldern in Formel zu arbeiten ist schon seit je her ein rotes Tuch für mich, da ich eher aus der Datenbankecke komme und da gibt es keine Farben…)

Trotzdem Grüsse aus Berlin/Bremen

Sorry da muss ich passen mit Makro Schreiben bzw. debuggen in Excel habe ich keine Ahnung.

Wünsche noch viel Erfolg bei der Suche…

EGS2

Geschätzte Community

Ich sollte Daten Zusammenstellen mit einem Excel-Makro.
Die Schleifen-Funktionen funktionieren.

Hoi Severin
in Makro kenne ich mich nicht gut aus und kann Dir nicht weiterhelfen. Du erhälst sicher von irgendwoher eine gute Antwort.
Gruss aus Luzern: PAUL

Meine Abfrage lautet: MsgBox(Sheets(„Jan_Dez_Master“).Cells(i, 1).Font.Color)

bei mir auf excel 2007 funtioniert es!

Zeichne mahl makro auf mit’n makro recorder,
setze in einer zelle die schrift farbe auf eine andere.
sieh dir den code dan an.

LG aus Salzburg

Die Schleifen-Funktionen funktionieren.

Eine Bedingung ist: Die Zelle in die Kopiert wird darf nicht
schwarz sein.

Meine Abfrage lautet: MsgBox(Sheets(„Jan_Dez_Master“).Cells(i,
1).Font.Color)

Die MsgBox gibt immer ein leeres Resultat zurück.

Was mache ich Falsch?

hallo Severin,
zunächst einmal gibt deine Messagebox ja nur die Farbe aus, mit der in der Zeile „i“ und Spalte 1 der Text formatiert ist.

Der Farbwert für Schwarz bei dem Font-Parameter „Color“ ist 0 (Null).

Wenn du allerdings die Zelle auf schwarzen Hintergrund eingestellt hast und das prüfen willst, funktioniert das mit „…cells(i,1).interior.color“
Auch hier ist schwarz=0

Greetings :wink:

Hallo Severin,
ich habe Deinen Code bei mir ausprobiert (Excel 2007 und Windows 7). Leider, leider funktioniert er bei mir einwandfrei.
Vielleicht wäre es aber noch eine Möglichkeit, wenn Du „ThemeColor“ prüfst, aber, wie gesagt, bei mir funktioniert es.

Gruß, Axel.

Hallo Severin,

ich bin zwar nicht gerade der VBA-Experte, habe aber für Ihre Anfrage einen Lösungsvorschlag. (gestestet in MS-Excel 2003 auf WIN7).

Sub eingabe()
'Eingabe von Werten nur in Zellen die nicht schwarz gefärbt sind
Dim i As Integer
Dim x As String
'Schleife für Anzahl einzugebender Werte (testweise 3) setzen
For i = 1 To 3
'Eingabe der Werte
x = InputBox(„Wert eingeben“)
'Cursor auf erste Zelle setzen
Cells(i, 1).Activate
'überprüfen ob die ausgewählte Zelle schwarz ist( interior)
If Sheets(„Tabelle1“).Cells(i, 1).Interior.ColorIndex 1 Then
'wenn aktuelle Zelle nicht schwarz, dann wert einfügen
Cells(i, 1).Value = x
'wenn schwarz dann nur Blank in Zelle einfügen
Else
Cells(i, 1).Value = „“
End If
Next i

End Sub

Herzliche Grüße von Hugo