Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Bedingte Formatierung mit Schriftgrößen

Bedingte Formatierung mit Schriftgrößen
19.10.2008 22:22:24
berkeweb
Hallo Zusammen,
gibt es eine Möglichkeit, die Funktion der bedingten Formatierung zu nutzen, um verschiedene Schriftgrößen zu erzeugen?
Meine bedingte Formatierung sieht derzeit wie folgt aus: Formel ist =wenn(E2="A";wahr;falsch). Wenn also in Zelle E2 A steht, dann hätte ich gerne, dass sich die Schriftgröße in Zelle F2 verändert (z.B. von Schriftgröße 10 auf Schriftgröße 14). Dies ist gemäß den Auswahlmöglichkeiten in Excel 2003 (Schriftfarbe, Schriftschnitt, Muster, etc.) so nicht möglich. Gibt es vielleicht eine andere Möglichkeit, um die Schriftgröße in Abhängigkeit einer Bedingung zu verändern?
Ich freue mich auf Eure Ideen und Vorschläge.
Beste Grüße
Axel
Anzeige

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Bedingte Formatierung mit Schriftgrößen
19.10.2008 22:35:52
Hajo_Zi
Hallo Axel,
das hast Du bestimmt schon selber festgestellt das dies in Deiner Version nicht geht. Das geht in allen Versionen nicht.

AW: Bedingte Formatierung mit Schriftgrößen
19.10.2008 22:44:30
berkeweb
Hallo Hajo,
das stimmt. Auf "normalem" Wege geht dies tatsächlich nicht. Allerdings weiß ich nicht, ob es bspw. vielleicht mittels VBA geht. Falls ja, wäre dies klasse.
Danke für Deine Antwort und beste Grüße
Axel
Anzeige
AW: Bedingte Formatierung mit Schriftgrößen
19.10.2008 23:15:00
Tino
Hallo,
mit VBA geht dies so, kommt ins entsprechende Tabellenblatt.
Option Explicit

Private Sub Worksheet_Calculate()

Range("F2").Font.Size = IIf(Range("E2").Value = "A", 14, 10)

End Sub


Gruß Tino

Anzeige
Sicher ist Sicher ;-)
19.10.2008 23:21:03
Tino
Hallo,
sollte mal Deine Formel aus irgendeinem Grund einen Fehler ausspucken, ist es besser diesen abzufangen, sonst läuft der Code auch auf einen Fehler.
Option Explicit

Private Sub Worksheet_Calculate()

If Not IsError(Range("E2")) Then _
Range("F2").Font.Size = IIf(Range("E2").Value = "A", 14, 10)

End Sub


Gruß Tino

Anzeige
AW: Bedingte Formatierung mit Schriftgrößen
21.10.2008 20:07:00
berkeweb
Hallo Tino,
besten Dank für Deine Mühen. Ich habe gerade den Code in das Tabellenblatt kopiert, aber leider passiert nichts. Den kleinen Tippfehler IIf statt If habe ich behoben, aber dennoch bleibt der Code im Editor rot.
Nachfolgend eine Beispieldatei, um zu verdeutlichen, was mein Ziel ist.
https://www.herber.de/bbs/user/56178.xls
Beste Grüße
Axel
Anzeige
AW: Bedingte Formatierung mit Schriftgrößen
21.10.2008 21:17:50
Tino
Hallo,
geht so, muss jetzt auf die Nachtschicht.
Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Range("C5:C9")) Is Nothing Then Exit Sub
Application.EnableEvents = False

Select Case Target
 Case "hoch" '************** 
  
  With Target.Offset(0, -1).Font
    .Size = 14
    .ColorIndex = 1
    .FontStyle = "Standard"
  End With
 
 Case "normal" '************** 
  
  With Target.Offset(0, -1).Font
    .Size = 12
    .ColorIndex = 1
   .FontStyle = "Kursiv"
  End With
 
 Case "niedrig" '************** 
  
  With Target.Offset(0, -1).Font
    .Size = 10
    .ColorIndex = 15
    .FontStyle = "Standard"
  End With

End Select
Application.EnableEvents = True
End Sub


PS: war kein Tippfehler.
Gruß Tino

Anzeige
AW: Bedingte Formatierung mit Schriftgrößen
22.10.2008 13:38:00
berkeweb
Hallo Tino,
ich habe doch noch eine Frage. Wenn ich in die Tabelle eine weitere Zeile einfüge (z.B. zwischen Einkaufen und Bügeln), dann erhalte ich immer folgende Fehlermeldung:
"Laufzeitfehler 13: Typen unverträglich"
Anschließend funktioniert dann das ganze Skript nicht mehr. Gibt es eine Möglichkeit/Erweiterung, um auch nach dem Einfügen einer neuen Zeile noch weiter mit dem Skript arbeiten zu können?
Hier die datei inklusive Skript:
https://www.herber.de/bbs/user/56194.xls
Beste Grüße
Axel
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Bedingte Formatierung mit Schriftgrößen in Excel


Schritt-für-Schritt-Anleitung

  1. Öffne deine Excel-Datei und gehe zu dem Tabellenblatt, in dem du die bedingte Formatierung anwenden möchtest.
  2. Klicke auf die Zelle, die du formatieren möchtest (z.B. F2).
  3. Wähle die Registerkarte "Start" und klicke auf "Bedingte Formatierung".
  4. Wähle "Neue Regel" und dann "Formel zur Ermittlung der zu formatierenden Zellen verwenden".
  5. Gib die Formel ein:
    =E2="A"
  6. Klicke auf "Formatieren" und wähle die gewünschten Schriftart- und Schriftfarboptionen. Beachte, dass du die Schriftgröße hier nicht ändern kannst, da dies in der bedingten Formatierung nicht unterstützt wird.
  7. Bestätige mit OK.

Um die Schriftgröße dynamisch zu ändern, kannst du VBA (Visual Basic for Applications) verwenden.


Häufige Fehler und Lösungen

  • Schriftgröße lässt sich nicht ändern: Dies ist ein bekanntes Problem in Excel, da die bedingte Formatierung keine Änderungen der Schriftgröße unterstützt. Stattdessen kannst du VBA verwenden, um diese Funktionalität zu erreichen.

  • VBA-Code funktioniert nicht: Achte darauf, dass du den Code in das richtige Tabellenblatt kopierst. Wenn der Editor den Code rot anzeigt, überprüfe auf Tippfehler oder falsche Syntax.

  • Laufzeitfehler 13: Typen unverträglich: Dieser Fehler tritt häufig auf, wenn du neue Zeilen einfügst. Stelle sicher, dass dein VBA-Code flexibel genug ist, um mit Änderungen in der Tabelle umzugehen, oder passe den Code entsprechend an.


Alternative Methoden

Wenn du keine VBA-Programmierung verwenden möchtest, kannst du die folgenden Alternativen in Betracht ziehen:

  1. Manuelle Anpassung: Du kannst die Schriftgröße manuell ändern, wenn eine Bedingung erfüllt ist. Dies ist jedoch nicht automatisiert und erfordert zusätzliche Schritte.

  2. Pivot-Tabellen: Wenn du Daten analysieren möchtest, die auf bestimmten Bedingungen basieren, können Pivot-Tabellen eine nützliche Option sein, um die Darstellung zu ändern.


Praktische Beispiele

Hier sind einige Beispiele für die Verwendung von VBA zur Änderung der Schriftgröße:

  1. Einfacher VBA-Code:

    Private Sub Worksheet_Calculate()
       Range("F2").Font.Size = IIf(Range("E2").Value = "A", 14, 10)
    End Sub
  2. Erweiterter Code mit Fehlerbehandlung:

    Private Sub Worksheet_Change(ByVal Target As Range)
       If Not IsError(Range("E2")) Then
           Range("F2").Font.Size = IIf(Range("E2").Value = "A", 14, 10)
       End If
    End Sub

Diese Codes helfen dir, die Schriftgröße je nach Bedingung zu ändern. Achte darauf, dass du den Code in das richtige Modul einfügst.


Tipps für Profis

  • Fehlerbehandlung: Füge immer eine Fehlerbehandlung zu deinem VBA-Code hinzu, um Laufzeitfehler zu vermeiden.

  • Verwende "Option Explicit": Dies zwingt dich, alle Variablen zu deklarieren, was hilft, Fehler zu vermeiden.

  • Teste den Code schrittweise: Arbeite mit kleinen Änderungen und teste den Code regelmäßig, um Probleme frühzeitig zu erkennen.


FAQ: Häufige Fragen

1. Kann ich die Schriftfarbe mit der bedingten Formatierung ändern? Ja, die Schriftfarbe kann in der bedingten Formatierung geändert werden, aber die Schriftgröße nicht.

2. Muss ich VBA lernen, um die Schriftgröße zu ändern? Ja, um die Schriftgröße dynamisch zu ändern, ist VBA erforderlich, da die grundlegenden Excel-Funktionen dies nicht unterstützen.

3. Welche Excel-Version benötige ich für diese Funktionen? VBA ist in allen modernen Excel-Versionen verfügbar, einschließlich Excel 2007, 2010, 2013, 2016, 2019 und Microsoft 365.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige