Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

verschiedene Schriftfarben in einer Zelle

Forumthread: verschiedene Schriftfarben in einer Zelle

verschiedene Schriftfarben in einer Zelle
01.07.2002 15:17:02
Antje
Hallo,

wie kann ich in einer Zelle mehrere Schriftfarben verwenden?
Und zwar:
Cells(i, 3).Font.ColorIndex = 5
Anzahl = x & "(" & z & ")"
Cells(i, 3).Value = Anzahl
möchte ich z.B. 26(5) "5" in rot und der Rest in blau!
Wie??
und Danke für Rückmeldungen
Gruß
Antje

Anzeige

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

Betreff
Datum
Anwender
Anzeige
Re: verschiedene Schriftfarben in einer Zelle
01.07.2002 15:22:40
Joachim L.
Hallo Antje,

Hier ein Ansatz. Ich hoffe er hilft Dir.
ActiveCell.Characters(Start:=1, Length:=4).Font.ColorIndex = 3
ActiveCell.Characters(Start:=5, Length:=3).Font.ColorIndex = 5
ActiveCell.Characters(Start:=8, Length:=6).Font.ColorIndex = 10

Gruß Joachim

Re: verschiedene Schriftfarben in einer Zelle
01.07.2002 15:25:32
Hajo_Zi
Hallo Antje

hier mal ein Beispiel für Zelle A1

Gruß Hajo

Anzeige
Re: verschiedene Schriftfarben in einer Zelle
01.07.2002 15:32:42
antje
Danke,

aber geht das nur über die Position der Zeichen?
Kann man das nicht auf die Variablen beziehen?


X=100 z=5 (oder x=10 z=12; die Zahlengrößen ständig verschieden sind)
Schreibe z immer rot?

Danke
Gruß
Antje

Re: verschiedene Schriftfarben in einer Zelle
01.07.2002 15:36:32
Hajo_Zi
Hallo Antje

Deine Frage kam nicht klar rüber

Gruß Hajo

Anzeige
Re: verschiedene Schriftfarben in einer Zelle
01.07.2002 15:46:10
Antje
Hallo Hajo,

nein
x und z sind irgenwelche Variablen mit Inhalten wie 100 oder 10 .. also x-beliebige Zahlen.
Somit weiß´ich nie die genaue Länge z kann einstellig, zweistellig oder auch dreistellig sein!
Kann man nicht einfach sagen
Font.Color.Index für Variable x = 3
FontColor.Index für Variable z =5

Das Ergebnis soll so aussehen: 126(13)' 13 soll rot sein
x z

Ich hoffe ich habe mich jetzt verständlicher ausgedrückt!
und Danke
Gruß
Antje

Anzeige
Re: verschiedene Schriftfarben in einer Zelle
01.07.2002 15:53:20
Hajo_Zi
Hallo Antje

am besten erklär sich das immer am Beispiel, wenn Du aschreibst was Du hast, wie das zusammen gesetzt wird und wie es aussehen soll. Jetzt hier die 3 Variante

Gruß Hajo

Re: verschiedene Schriftfarben in einer Zelle
01.07.2002 16:11:46
Antje
Hallo Hajo ... bitte nicht verwzeifeln!

Also
hier mein Code
Sub offene_Punkte()

Dim Zeilen As Object
Dim tabellenname As String
Dim Anzahl As String
Dim i#, j#, z#

For i = 6 To 17
If (Cells(i, 2) <> "" And Cells(i, 2) <> "...") Then
tabellenname = Cells(i, 2).Value
Worksheets(tabellenname).Activate
Set Zeilen = ActiveCell.CurrentRegion
z = 0
X = Zeilen.Rows.Count
For j = 2 To Zeilen.Rows.Count
If Cells(j, 6) = "" Then
z = z + 1
End If
Next j
Worksheets("menü").Activate
Cells(i, 3).Font.ColorIndex = 5
Anzahl = X - 1 & "(" & z & ")"
Cells(i, 3).Value = Anzahl

End If
Next i

End Sub

Hiermit schreibe ich mir beim Öffenen meiner Tabelle in eine Spalte auf dem ersten Blatt "Menue" immer die X- Anzahl laufender Projekte (tabellenblättern) und dahinter in Klammern die Z-Anzahl der "leeren Zellen" von diesem Tabellenblatt!
Jetzt möchte ich diese Anzahl der "leeren Zellen" auf dem ersten Blatt in rot markieren! Wobei meine Variable (string) Anzahl sich aus X und Z zusammensetzt!
Ich habe es jetzt mit deinem Code ausprobiert, aber es wird immer noch alles in blau geschrieben!

Gruß
Antje

Anzeige
Re: verschiedene Schriftfarben in einer Zelle
01.07.2002 16:21:22
Hajo_Zi
Hallo Antje

das war mir jetzt ein wenig zu mühselig zu testen.

Gruß Hajo

Re: verschiedene Schriftfarben in einer Zelle
01.07.2002 16:35:12
Antje
Hallo Hajo,

es funktioniiiert!!!!
Suupiiii Danke

Gruß
Antje

Re: verschiedene Schriftfarben in einer Zelle
01.07.2002 16:41:02
Martin Beck
Hallo Antje,

hier zunächst der Code für die markierte Zelle:

Gruß
Martin Beck

Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Verschiedene Schriftfarben in einer Zelle


Schritt-für-Schritt-Anleitung

Um in einer Zelle von Excel verschiedene Schriftfarben zu verwenden, kannst Du den folgenden VBA-Code verwenden. Dieser Code ermöglicht es Dir, unterschiedliche Teile des Textes in einer Zelle farblich zu gestalten, abhängig von den Variablen, die Du verwendest.

  1. Öffne Excel und drücke ALT + F11, um den VBA-Editor zu öffnen.

  2. Füge ein neues Modul ein, indem Du mit der rechten Maustaste auf "VBAProject (DeineDatei.xlsx)" klickst und "Einfügen" > "Modul" auswählst.

  3. Kopiere den folgenden Code in das Modul:

    Sub SchriftfarbenInZelle()
        Dim x As Integer
        Dim z As Integer
        Dim Anzahl As String
    
        ' Beispielwerte
        x = 100
        z = 5
    
        ' Setze den Wert in die Zelle
        Anzahl = x & "(" & z & ")"
        Cells(1, 1).Value = Anzahl
    
        ' Färbe Teile des Textes
        With Cells(1, 1)
            .Characters(Start:=InStr(Anzahl, "(") + 1, Length:=Len(z)).Font.ColorIndex = 3 ' Rot für z
            .Characters(Start:=1, Length:=InStr(Anzahl, "(") - 1).Font.ColorIndex = 5 ' Blau für x
        End With
    End Sub
  4. Schließe den Editor und gehe zurück zu Excel.

  5. Führe das Makro aus, indem Du ALT + F8 drückst, das Makro auswählst und auf "Ausführen" klickst.


Häufige Fehler und Lösungen

  • Fehler: Der gesamte Text wird in einer Farbe angezeigt.

    • Lösung: Überprüfe, ob die Start und Length Parameter im Characters-Befehl korrekt gesetzt sind. Diese sollten den genauen Textbereich angeben, den Du färben möchtest.
  • Fehler: Die Schriftfarbe ändert sich nicht.

    • Lösung: Stelle sicher, dass Du beim Ausführen des Makros die Zelle ausgewählt hast, in der Du die Farben ändern möchtest. Auch die ColorIndex-Werte müssen gültig sein (z.B. 3 für Rot, 5 für Blau).

Alternative Methoden

Eine Alternative zum VBA-Code ist die Verwendung von bedingter Formatierung, um den Text je nach Wert in einer Zelle unterschiedlich darzustellen. Diese Methode ist jedoch begrenzt, da sie keine unterschiedlichen Farben für verschiedene Teile eines Textes innerhalb einer Zelle unterstützt.


Praktische Beispiele

Hier sind einige Beispiele, wie Du den obigen Code anpassen kannst:

  1. Zwei Variablen mit unterschiedlichen Farben:

    Dim a As Integer
    Dim b As Integer
    a = 25
    b = 10
    Anzahl = a & "(" & b & ")"
    
    ' Färbe b in Grün
    .Characters(Start:=InStr(Anzahl, "(") + 1, Length:=Len(b)).Font.ColorIndex = 10 ' Grün
  2. Dynamische Werte:

    Stelle sicher, dass Du dynamische Werte aus anderen Zellen einfügen kannst:

    x = Cells(2, 1).Value ' Wert aus Zelle A2
    z = Cells(2, 2).Value ' Wert aus Zelle B2

Tipps für Profis

  • Verwende die InStr-Funktion, um die Position der Klammer oder anderer Trennzeichen zu bestimmen, um die Schriftfarbe gezielt ändern zu können.
  • Teste verschiedene ColorIndex-Werte, um eine breitere Palette von Farben zu nutzen.
  • Erstelle eine benutzerdefinierte Funktion, um die Schriftfarben basierend auf spezifischen Bedingungen automatisch zu ändern.

FAQ: Häufige Fragen

1. Kann ich die Schriftarten und -größen ebenfalls anpassen?
Ja, zusätzlich zur Farbe kannst Du auch die Schriftart und -größe mithilfe der .Font-Eigenschaften für die entsprechenden Characters-Bereiche anpassen.

2. Funktioniert dieser Code in allen Excel-Versionen?
Der VBA-Code sollte in den meisten modernen Excel-Versionen (Excel 2007 und später) funktionieren. Achte darauf, dass Du Makros aktiviert hast.

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