Как получить адрес ячейки, которая вызывает функции VBA в листе Excel
Есть ли функция, чтобы получить адрес ячейки, вызывающей функцию VBA?
Я использовал "Application.ActiveCell.Address", но обнаружил, что этот метод не является правильным способом получить адрес вызывающей ячейки.
Например: если у нас есть лист Excel с сохраненными функциями VBA, то после повторного открытия листа вышеуказанный метод не будет работать.
пожалуйста, помогите
NiMo
Ответы
Ответ 1
Вы можете использовать Application.Caller, но вам, вероятно, лучше всего передать ячейку функции.
With Application.Caller
CallerRows = .Rows.Count
CallerCols = .Columns.Count
CallerAddr = .Address
End With
Смотрите: http://www.cpearson.com/excel/WritingFunctionsInVBA.aspx
Чтобы передать ячейку:
=SomeFunction(A1)
Если код имеет:
SomeFunction(r)