У меня следующий код для пометки ячеек смещения, если над выбранными ячейками есть изображение над ними. Код выполняется правильно и быстро для небольшого выбора. Однако, если выбор большой, он замедляется. Можно ли это оптимизировать? Есть ли способ перебрать только выбранные ячейки вместо перемещения всей коллекции фигур на листе? Код:
Я попытался следующий код с методом пересечения безуспешно:
Sub findCellsWithShapes()
Dim sh As Shape, isect, rng As Range, n As Integer
n = 1
For Each sh In ActiveSheet.Shape
Set isect = Application.Intersect(sh.TopLeftCell, Selection)
If Not isect Is Nothing Then
If sh.TopLeftCell.Address = Selection(n) Then
Selection(n).Offset(0, 30) = "Yes"
End If
Else
If sh.TopLeftCell.Address = Selection(n) Then
Selection(n).Offset(0, 30) = "No"
End If
End If
If n < Selection.Cells.Count Then
n = n + 1
Else
Exit For
End If
Next sh
End Sub