«Я хочу найти, какие клетки окрашены определенным образом»
в VBA вы можете запустить быструю процедуру, используя метод Find
, который выполняет поиск по формату. Например, чтобы найти все ячейки с тем же цветом шрифта и внутренним цветом, что и ячейка в A1. Я полагаю, вы можете использовать что-то подобное в VSTO
Sub FindFormat()
Dim rng1 As Range
Dim rng2 As Range
Dim strAddress As String
With Application.FindFormat
.Interior.ColorIndex = [a1].Interior.ColorIndex
.Font.Color = [a1].Font.Color
End With
Set rng1 = Cells.Find("", [a1], xlFormulas, , , , , , True)
If Not rng1 Is Nothing Then
strAddress = rng1.Address
Set rng2 = rng1
Do
Set rng1 = Cells.Find("", rng1, xlFormulas, , , , , , True)
Set rng2 = Union(rng1, rng2)
Loop While rng1.Address <> strAddress
MsgBox "Range similar format to A1 is " & rng2.Address
End If
End Sub
![enter image description here](https://i.stack.imgur.com/vjXBB.png)