文本框是对另一个文本框的引用,需要返回第二个文本框中的内容

时间:2019-06-26 17:56:27

标签: vba ms-access access-vba

对此可能有一个简单的解决方案,但这使我难以理解。

我有一个文本框(名称= CFMon),它引用一个月文本框。用户将提交所有月份的值,但是他们选择用于计算的关键月份。我需要使用他们选择的关键月份从相应的月份文本框中获取值(每个月份分别命名为mon1,mon2等)

当不使用VBA时,我将简单地使用间接函数来评估所有字符串。

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

这完全可以完成预期的工作,并且只需重新输入文本字符串

我希望评估参考并返回适当的月份值。例如。用户选择CFMon = Mon3,该值将返回用户在Mon3(3月)文本框中输入的值

1 个答案:

答案 0 :(得分:4)

您可以从Controls集合中获取控件,例如:

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

或者,您可以使用eval函数,但我建议您这样做:

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