У меня есть книга с двумя листами. На листе А я изменил цвет интерьера некоторых ячеек. Я хотел бы найти ячейки в Листе B с соответствующим текстом и установить их на тот же цвет интерьера. Тем не менее, когда я добираюсь до hRow = Application...
, я получаю сообщение об ошибке The application does not support this object or property.
Я искал аналогичные функции, но у меня нет никакого успеха, чтобы найти подходящий способ сопоставить текст, не перебирая каждую ячейку в диапазоне.Excel VBA: Match Cell Color
Public Sub MatchHighlight()
Dim lRow As Integer
Dim i As Integer
Dim hRow As Integer
Dim LookUpRange As Range
Set LookUpRange = Worksheets("HR - Highlight").Range("C2:C104")
Dim compare As Range
Set compare = Worksheets("Full List").Range("C2:C277")
lRow = Worksheets("Full List").UsedRange.Rows.Count
For i = 2 To lRow
hRow = Application.Worksheets("Full List").WorksheetFunction.Match(compare.Range("C" & i).Text, LookUpRange, 0)
If Not IsNull(hRow) Then
compare.Range("C" & i).Interior.Color = LookUpRange.Range("C" & hRow).Interior.Color
End If
Next i
End Sub
Birdsview: Remove 'Worksheets (« Полный список »)' after 'Application' Однако я бы принял другой подход ... Я бы использовал' .Find' и '.Findnext' –
Вывод' Worksheets («Полный список» ")' привел к ошибке 'Не удалось получить свойство Match из класса WorksheetFunction' – tmoore82
Мой код с .Find и .FindNext уже готов, но поскольку @tigeravatar отправил его первым, я отброшу его :) –