Текстовое поле является ссылкой на другое текстовое поле, необходимо вернуть значение что во втором текстовом поле - PullRequest
1 голос
/ 26 июня 2019

Возможно, есть простое решение, но оно ускользает от меня.

У меня есть текстовое поле (имя = CFMon), которое ссылается на текстовое поле месяца.Пользователь отправит значения для всех месяцев, но выберет ключевой месяц, который будет использоваться для расчета.Мне нужно использовать выбранный ключевой месяц, чтобы получить значение из соответствующего текстового поля месяца (каждый месяц называется mon1, mon2 и т. Д.)

Если VBA не используется, я просто использовал бы косвенную функцию для оценки всехстрока.

test = Forms![Form]![CFMon] & ".value" 

это делает именно то, что должно, и просто извергает текстовую строку

Я надеюсь оценить ссылку и вернуть соответствующее значение месяца.Например.Пользователь выбирает CFMon = Mon3, значение будет возвращать значение, введенное пользователем в текстовом поле Mon3 (март)

1 Ответ

4 голосов
/ 26 июня 2019

Вы можете получить элемент управления из коллекции Controls, например:

test = Forms("Your Form Name").Controls(Forms![Form]![CFMon]).Value

В качестве альтернативы, вы можете использовать функцию eval, но я бы посоветовал против этого:

test = eval("Forms![Your Form Name]![" & Forms![Form]![CFMon] & "].Value")
...