Excel 2010: bed. Format.: Schriftart wechseln

Hallo Wissende,

anscheinend geht es nicht, dass sich Schriftart, -größe und -farbe in einer Zelle abhängig von einer bedingten Formatierung festlegen lassen.

Dass die Attribute 'normal, ‚fett‘ … und ‚durchgestrichen‘ gehen, weiß ich. Mich ärgert aber, dass Excel die Fonts ja anzeigt, aber abgeschattet, also inaktiv.

Frage an die Experten: Gibt’s dennoch einen Trick (vielleicht mit einem Makro, vorausgesetzt, dieses liefe (beliebig oft wiederholbar!) völlig selbsttätig ab nach Abschluss der Eingabe per ENTER-Taste o.ä.

Beispiel-Aufgabe:

a) wenn in Zelle A1 „Hund“ drinsteht, soll in B1 die Schrift so und so aussehen (Font, Farbe, Größe, )

b) wenn in Zelle A1 „Katze“ drinsteht, soll in B1 die Schrift irgendwie anders formatiert sein.

Und alles beliebig oft umkehrbar („Hund“ oder „Katze“). Und dann jeweils unaufgefordert vollautomatisch umformatiert. Außer „Hund“ oder „Katze“ ist nichts anderes zugelassen. Also „Maus“ geht per Datenüberprüfung (Datengültigkeit) nicht.

Jetzt bin ich aber gespannt …

Danke und Gruß
Ludwig

Hallo Ludwig,

Dass die Attribute 'normal, ‚fett‘ … und ‚durchgestrichen‘
gehen, weiß ich. Mich ärgert aber, dass Excel die Fonts ja
anzeigt, aber abgeschattet, also inaktiv.

das ärgert mich überhaupt nicht. Ich finde das sogar viel besser als
wenn da nur angezeigt wird was aktiv ist bzw. funktioniert.
So sehe ich was da „gehen“ könnte.

Mein Wunschtraum wäre, durch links- oder Rechtsklick darauf oder
leicht in der Hilfe zu finden wäre WARUM da die deaktiviert sind
deaktiviert sind und was ich tun muss um manches zu aktivieren.

Wenn dann da z.B. als Erklärung wegen deaktivierung stünde,
das geht bei bed. Formatierung nicht so ist das eine Information,
dann weiß ich das.
Wenn aber nicht rätsel ich rum, mach ich da was falsch, geht es doch
irgendwie usw…

Frage an die Experten

Ich versuchs trotzdem. Nein, ist kein Licht untern Scheffel stellen,
und wenn ich sage ich bin kein Experte dann ist das so.

Gibt’s dennoch einen Trick (vielleicht
mit einem Makro, vorausgesetzt, dieses liefe (beliebig oft
wiederholbar!) völlig selbsttätig ab nach Abschluss der
Eingabe per ENTER-Taste o.ä.

Ich schaue die Tage mal ob mir dazu Code einfällt, heute nicht mehr.
Von der Problemansicht her müßte das klappen mit Code,
Daten in eine Zelle ein-entern löst das Change-Ereignis aus,
wodrauf dann entsprechender Code reagiert/anspringt und prüft welche
Zelle/Zellen da grad geändert wurden und handelt.

Jetzt bin ich aber gespannt …

Ich bin müd *smile*

Gruß
Reinhard

Hallo Ludwig,
ich würde das nicht per bedingter Formatierung oder Macho machen.

Die Tabellenblätter sind groß genug um drei unterschiedliche Ansichten in drei unterschiedlichen Bereichen zu erstellen.

Also drei getretene Ansichten erstellen „Neutral“;„Hund“;„Katze“
dann schaltest du je nach Wunsch zwischen dein Ansichten hin und her.

Sind es mehrere Spalten könntest du die gewünschten Ansichten gruppieren,
alternative, drei Tabellenblätter mit den Ansichten

Egal wie, die Inhalte der Zellen könnten verknüpft werden so das die Ansichten jederzeit und aktuell zur Verfügung steht.

Gruß Holger

Hallo Reinhard,

also bleibt es spannend …

Ich freu mich drauf,

Ludwig

Hallo Holger,

was du vorschlägst, klint auch nicht schlecht. Nur in diesem Fall hätte ich ein Platzproblem im Tabellenblatt.

Danke für deine Mühe,

Ludwig

was du vorschlägst, klint auch nicht schlecht. Nur in diesem Fall :hätte ich ein Platzproblem im Tabellenblatt.

dann drei Tabellenblätter…„Neutral“;„Hund“;„Katze“

Gruß Holger

Hallo

Interessant ist, das was du willst. Bei den kostenlosen LibreOffice (früher OpenOffice) funktioniert das ohne Kopfstände, als bei den neuesten kostenpflichtigen Excel. Vor einigen Tagen war mal ein anderes Problem in anderen Forum was bei Excel auch nicht funktionierte jedoch bei LibreOffice. Schon interessant.

Gruß

also bleibt es spannend …

Hallo Ludwig,

nachfolgenden Code in das Modul von Tabelle1.
Die Größe (Size) ist ja selbsterklärend.

Wenn du die Farbennummer brauchst und die Schreibweise der
Schriftarten usw. so zeichne dir ein Makro auf während du eine
beliebige Zelle nach Wunsch formatierst.

In dem Makro steht dann da was du brauchst.
Es stehen dort auch noch andere Dinge die auf False gesetzt
werden, die kann man weglassen denn Standardwert ist False.

Gruß
Reinhard

Option Explicit

Private Sub Worksheet\_Change(ByVal Target As Range)
Set Target = Intersect(Target, Range("A1"))
If Target Is Nothing Then Exit Sub
Application.EnableEvents = False
With Range("B1").Font
 .Name = IIf(UCase(Target.Value) = "HUND", "Courier", "Arial")
 .Size = IIf(UCase(Target.Value) = "HUND", 15, 8)
 .ColorIndex = IIf(UCase(Target.Value) = "HUND", 3, 5)
 .Bold = IIf(UCase(Target.Value) = "HUND", True, False)
End With
Application.EnableEvents = True
End Sub
2 Like

Hallo Reinhard,

das ging jetzt aber schnell. Bist halt doch ein Experte …

Gruß
Ludwig

Hallo Ludwig,

ich habe das evtl. unglücklich formuliert.
Standardwert ist nicht immer False, kann auch True sein oder was
anderes.
Z.B. bei SVerweis (VLookup) ist der Standardwert des vierten
Parameters True.

Standardwert bedeutet ob du ihn nun angibst oder wegläßt
ist gleich.

Gruß
Reinhard

Begriffen. Nochmals vielen Dank!

Ludwig