При изменении значения (раскрывающегося списка) ячейки B12 в ячейке B13 должно быть указано «Please Select ...», и все ячейки в диапазоне A16: N20 должны быть очищены, но не формулы (каждая ячейка в диапазон содержит формулы индекса / соответствия, связанные с ячейками B12, B13 и другими ...). Это текущий код, который не работает ...
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$B$12" Then
With Application
.DisplayStatusBar = False
.ScreenUpdating = False
.EnableEvents = False
.Calculation = xlCalculationManual
End With
Range("B13").Value = "Please Select..."
Range("A16:N20").SpecialCells(xlCellTypeConstants, 23).ClearContents
With Application
.Calculation = xlCalculationAutomatic
.EnableEvents = True
.ScreenUpdating = True
.DisplayStatusBar = True
End With
End If
End Sub
Также Excel очень медленно обновляет все эти формулы индекса / соответствия - есть ли способ в vba сделать его быстрее?