Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1836to1840
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
Inhaltsverzeichnis

Formatierung aus Zelle auslesen

Formatierung aus Zelle auslesen
15.07.2021 10:54:45
Die
Hallo an einem endlich wieder etwas sonnigen Tag,
in einem Sheet wird viel mit bedingter Formatierung gearbeitet. Irgendwann habe ich alle Einstellungen in vba übernommen, das sieht dann bei mir so aus:
' Spalte B, C
Range("B11:C500").Select
Cells.FormatConditions.Delete
Range("B11:C500").Select
Selection.FormatConditions.Add Type:=xlExpression, Formula1:="=$CLB11=2"
Selection.FormatConditions(Selection.FormatConditions.Count).SetFirstPriority
With Selection.FormatConditions(1).Interior
.PatternColorIndex = xlAutomatic
.Color = RGB(255, 125, 125)
.TintAndShade = 0
End With
Selection.FormatConditions(1).StopIfTrue = False

usw.
So werden dann alle bedingten Formatierungen gelöscht und neu geschrieben. Das klappt ganz gut, weil dadurch Kopierfehler etc. vermieden werden. So alle Monate setze ich Formatierungen wieder auf Standard zurück.
Jetzt habe ich eine Anwesenheits-Tabelle, bei der für eine bedingte Formatierung Schriftgröße, fett/kursiv/normal, Schriftfarbe und Ausfüllfarbe festgelegt werden. Die Bedingung ist erfüllt, wenn ein bestimmter Buchstabe in der Zelle steht. Trage ich ein 'U' (für Urlaub) ein, füllt sich die Zelle in grün, das U ist fett und etwas größer, bei 'B' (für z.B. Besprechung) in grau und normaler Größe etc. Das bekomme ich - hoffentlich - alleine hin.
Allerdings sollen diese Angaben nicht feststehen, sondern aus einer "Musterzelle" entnommen werden. Das Makro soll also aus einer Zelle 'Muster!A1' erkennen, dass das U-Feld künftig in Hell-Blau mit kleiner Schrift, aus 'Muster!A2', dass das A-Feld aber in Dunkelblau erscheinen usw.
Ich hoffe, ihr versteht, was ich meine. Der Hintergrund: Kollegen arbeiten in diversen Projekten, die unterschiedliche Aufmerksamkeiten erfordern. Da kam die Anforderung, die jeweils wichtigen Projekte entsprechend in Signalfarben markieren zu können. Es sind so ca. 15 Buchstaben, die vergeben werden können.
Herzlichen Dank für Input sagt
Die Johanna

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Formatierung aus Zelle auslesen
15.07.2021 12:52:06
UweD
Hallo Johanna
in ein normales Modul...

Option Explicit
Public SchrGr, SchrFett, HFarbe, FForm
Sub BedForm_setzen()
' Spalte B, C
With Sheets("Tabelle1").Range("B11:C500")
.Cells.FormatConditions.Delete
FForm = 2
Call Form_Lesen
.FormatConditions.Add Type:=xlExpression, Formula1:="=$CLB11=" & FForm
.FormatConditions(.FormatConditions.Count).SetFirstPriority
With .FormatConditions(.FormatConditions.Count)
.Interior.Color = HFarbe
'.Font.Size = SchrGr 'nicht möglich
.Font.Bold = SchrFett
.StopIfTrue = False
End With
FForm = "U"
Call Form_Lesen
.FormatConditions.Add Type:=xlExpression, Formula1:="=$CLB11=" & FForm
.FormatConditions(.FormatConditions.Count).SetFirstPriority
With .FormatConditions(.FormatConditions.Count)
.Interior.Color = HFarbe
'.Font.Size = SchrGr 'nicht möglich
.Font.Bold = SchrFett
.StopIfTrue = False
End With
End With
End Sub
Private Sub Form_Lesen()
Dim TB2 As Worksheet, Zeile As Integer, RNG As Range
Set TB2 = Sheets("Muster")
If WorksheetFunction.CountIf(TB2.Columns(1), FForm) > 0 Then
Zeile = WorksheetFunction.Match(FForm, TB2.Columns(1), 0)
Set RNG = TB2.Cells(Zeile, 1)
SchrGr = RNG.Font.Size
HFarbe = RNG.Interior.Color
SchrFett = RNG.Font.Bold
Else
MsgBox "Für :'" & FForm & "' keine Formatierung gefunden"
End If
End Sub
Bei $CLB11= bin ich nicht sicher, ob du das wirklich so statisch auf die eine Zelle bezogen haben möchtest.
Aber diese Anfangslösung ist ja ausbaufähig...
LG UweD
Anzeige
AW: Formatierung aus Zelle auslesen
16.07.2021 09:30:05
Die
Hallo Uwe,
nach meiner blöden Formulierung zum testen mit dem daraus resultierenden Missverständnis (sorry) doch noch eine inhaltliche Frage:
Die Frage geht zur Textgröße: Änderungen in der Musterzelle haben da keine Relevanz? Das ist nicht möglich? Habe ich deinem Kommentar da richtig interpretiert? Danke.
Viele Grüße von
Der Johanna
AW: Formatierung aus Zelle auslesen
16.07.2021 14:14:34
UweD
Hallo
Genau. Die Schriftgröße ist in der Bedingten Formatierung NICHT änderbar.
LG UweD
AW: Formatierung aus Zelle auslesen
15.07.2021 13:04:16
Daniel
Hi
Eine flexible bedingte Formatierung, die das Format aus einer Vorgabezelle anwendet, gibt es meines Wissens nach nicht.
Das einzige was du machen kannst, ist beim Einrichten per Makro die Formatierungen nicht fest vorzugeben, sonden hier aus der Zelle auszulesen.
Also aus

.Color = RGB(255, 125, 125)
Wird dann

.Color = Sheets("Muster").Range("A1"). Interior.Color
Solltest du im Blatt "Muster" was ändern, wird die Änderung erst aktiv wenn das Makro 1x gelaufen ist.
Gruß Daniel
Anzeige
AW: Formatierung aus Zelle auslesen
15.07.2021 16:34:46
Die
Hallo Uwe, hallo Daniel,
zwei geniale Lösungen! Wow, vielen Dank für die Hilfe. Ich habe beide positiv getestet, muss sie natürlich noch auf die konkrete Situation anpassen. Das ist eine große Hilfe für mich!
Vielen Dank für eure Unterstützung, es freut sich
Die Johanna

320 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige