Как ссылаться на именованную ячейку относительным способом в Excel VBA

У меня есть 2 типа ячеек, к которым мне нужно получить доступ через код. обе являются именованными ячейками. одна - это ячейка с фиксированным столбцом и строкой, например ($ B $ 3). Я могу получить к нему доступ в коде, используя его имя => Range("Montante"). НЕТ ПРОБЛЕМ до сих пор. проблема в том, что когда я пытаюсь получить доступ к другой ячейке под названием «LEntrada» с фиксированным столбцом, но не с фиксированной строкой, например ($ C8). Есть ли способ получить доступ к LEntrada в соответствии с ячейкой, в которой находится функция?

заранее спасибо.

Public Function QtdEntradaSimulado3() As Variant
    On Error GoTo TratarErro
    Dim qtdEntrada As Integer
    Dim Montante As Range
    Dim LEntrada As Range

    Application.Volatile True

    Set Montante = Range("Montante")
    Set LEntrada = Range("LEntrada")

    qtdEntrada = Fix((Montante / LEntrada) / 100) * 100
    QtdEntradaSimulado3 = IIf(qtdEntrada = 0, "", qtdEntrada)

Sair:
    Exit Function
TratarErro:
    QtdEntradaSimulado3 = ""
    GoTo Sair
End Function
Преобразование HTML-таблицы в профессиональный документ Excel
Преобразование HTML-таблицы в профессиональный документ Excel
Это самый простой способ создания Excel из HTML-таблицы.
Импорт excel в laravel в базу данных
Импорт excel в laravel в базу данных
Здравствуйте, дорогой читатель, в этой статье я расскажу практическим и быстрым способом, как импортировать файл Excel в вашу базу данных с помощью...
0
0
160
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Объект Range() не смотрит на активную ячейку, чтобы определить, на что должен ссылаться именованный диапазон, но коллекция Names() делает это. Вы можете использовать его следующим образом:

    Set LEntrada = Names("LEntrada").RefersToRange

или если LEntrada была определена как Double:

    LEntrada = Names("LEntrada").RefersToRange.Value

Другие вопросы по теме