Private/Workbook/Add-TcWorkbookStateFormat.ps1
|
function Add-TcWorkbookStateFormat { <# .SYNOPSIS Colors the state of a workload. A state that rests on part of the data keeps its color and its words. #> [CmdletBinding()] param( [Parameter(Mandatory)][hashtable]$Book, [Parameter(Mandatory)][object]$Sheet, [Parameter(Mandatory)][string]$Address ) $first = ($Address -split ':')[0] foreach ($rule in @( @('Blocking', 'Bad'), @('To address', 'Warn'), @('Secondary', 'Info'), @('Passed', 'Good'), @('Not collected', 'Plain'), @('Not used', 'Plain'), @('No service', 'Plain'))) { $colors = $Book['Theme'][$rule[1]] $format = $Sheet.ConditionalFormatting.AddBeginsWith($Sheet.Cells[$Address]) $format.Text = $rule[0] $format.Formula = 'LEFT({0},{1})="{2}"' -f $first, $rule[0].Length, $rule[0] $format.Style.Fill.BackgroundColor.Color = ConvertTo-TcWorkbookColor $colors[0] $format.Style.Font.Color.Color = ConvertTo-TcWorkbookColor $colors[1] } } |