Formatconditions je objekt VBA Excel, který vám umožňuje nastavit podmíněné formáty pro buňky a datové rozsahy. Pomocí Formatconditions můžete změnit barvu pozadí, barvu písma, zvýraznit buňky, které splňují určité podmínky.
Chcete-li použít Formatconditions, musíte určit rozsah buněk, na které se budou vztahovat podmíněné formáty, a poté nakonfigurovat všechny podmínky, za kterých se změní formát buněk.
Pro stanovení podmínek Formatconditions používá srovnávací operátory ( > , atd.), operátory logické a (AND) a nebo (OR), stejně jako vestavěné funkce jako ISBLANK, ISEVEN, ISODD atd.
Příklad použití Formatconditions:
Sub FormatCells()
Dim rng As Range
Set rng = Range("A1:A10")
With rng.FormatConditions.Add(Type:=xlCellValue, Operator:=xlGreater, Formula1:="10")
.Interior.Color = RGB(255, 0, 0)
.Font.Bold = True
.Font.Color = RGB(255, 255, 255)
End With
With rng.FormatConditions.Add(Type:=xlExpression, Formula1:="=MOD(ROW(), 2) = 0")
.Interior.Color = RGB(0, 255, 0)
.Font.Italic = True
.Font.Color = RGB(0, 0, 0)
End With
End Sub
V tomto příkladu je vytvořen rozsah buněk od A1 do A10, ve kterém se budou formáty buněk měnit podle podmínek. První podmínka stanoví, že pokud je hodnota buňky větší než 10, pak změnit formát na tučné písmo, červené pozadí a bílou barvu písma. Druhá podmínka stanoví, že pokud je číslo řádku buňky děleno 2 beze zbytku, pak změňte formát na kurzívní písmo, zelené pozadí a černou barvu písma.
Formatconditions jsou velmi užitečné pro vytváření zpráv, analýzu dat a sledování trendů. V kombinaci s dalšími funkcemi VBA Excel mohou výrazně zlepšit vizuální reprezentaci dat a usnadnit jejich analýzu.
Popis Formatconditions VBA Excel
Formatconditions je sbírka objektů conditionformat, které obsahují informace o formátu a podmínkách formátování. Každý objekt Conditionformat může obsahovat jednu nebo více podmínek formátování (jako je změna barvy pozadí, písma nebo stylu buňky) a odpovídající podmínku (například hodnota větší nebo menší než konkrétní číslo).
Chcete-li použít Formatconditions, musíte nejprve vytvořit objekt Range, což bude rozsah buněk, na které je třeba použít formátování. Poté je možné přidat nový objekt conditionformat do sbírky Formatconditions pomocí metody Add (). Po přidání objektu Conditionformat můžete nakonfigurovat jeho nastavení a podmínky formátování pomocí vlastností a metod dostupných pro objekt Conditionformat.
Příklad použití Formatconditions:
Sub ApplyConditionalFormatting()Dim rng As RangeDim formatConditions As FormatConditionsDim conditionFormat As ConditionFormat' Указываем диапазон ячеек для форматированияSet rng = Range("A1:A10")' Добавляем новый объект Conditionformat в коллекцию FormatconditionsSet formatConditions = rng.FormatConditionsSet conditionFormat = formatConditions.Add(xlCellValue, xlGreater, "0")' Устанавливаем форматирование ячеекWith conditionFormat.Interior.Color = RGB(255, 0, 0).Font.Bold = TrueEnd WithEnd Sub
V uvedeném příkladu kódu je vytvořen objekt Range, což je rozsah buněk od A1 do A10. Poté přidáme nový objekt Conditionformat do sbírky Formatconditions pro tuto řadu buněk. V tomto případě uvádíme, že formátování by mělo být použito, pokud je hodnota buňky větší než 0. Poté nastavíme formátování buněk nastavením červené barvy pozadí a tučného písma.
Formatconditions v aplikaci VBA Excel vám tedy umožňuje flexibilně přizpůsobit formátování buněk podle podmínek a představuje praktický nástroj pro automatizaci práce s daty v Excelu.
Příklady použití Formatconditions v VBA Excel
1. Zobrazení hodnoty buňky nad určitou hodnotu červeně.
Řekněme, že máme rozsah buněk A1:A10 a chceme červeně zvýraznit ty buňky, které obsahují hodnoty přesahující 100. Pomocí Formatconditions v aplikaci VBA Excel to lze provést takto:
Sub HighlightCells() Dim rng As Range Set rng = Range("A1:A10") With rng.FormatConditions.Add(Type:=xlCellValue, Operator:=xlGreater, Formula1:="100") .Interior.Color = RGB(255, 0, 0) End With End Sub
2. Zobrazení prázdných buněk zeleně.
Řekněme, že máme rozsah buněk B1:B10 a chceme zeleně zvýraznit ty buňky, které neobsahují žádné hodnoty. Pomocí Formatconditions v aplikaci VBA Excel to lze provést takto:
Sub HighlightEmptyCells() Dim rng As Range Set rng = Range("B1:B10") With rng.FormatConditions.Add(Type:=xlBlanks) .Interior.Color = RGB(0, 255, 0) End With End Sub
3. Zobrazení duplicitních hodnot ve sloupci modrou barvou.
Řekněme, že máme rozsah buněk C1:C10 a chceme modře zvýraznit ty buňky, které obsahují duplicitní hodnoty. Pomocí Formatconditions v aplikaci VBA Excel to lze provést takto:
Sub HighlightDuplicates() Dim rng As Range Set rng = Range("C1:C10") With rng.FormatConditions.AddUniqueValues .DupeUnique = xlDuplicate .Interior.Color = RGB(0, 0, 255) End With End Sub
To je jen několik příkladů, jak lze Formatconditions použít VBA Excel. S nimi můžete vytvářet různé podmíněné formátování pro váš rozsah buněk.