如何用For循环替代用户表单中重复的txtTot与Hrs文本框赋值代码
解决方案
可以通过VBA的Controls集合,结合循环变量拼接控件名称的方式简化重复代码,具体实现如下:
Dim i As Integer For i = 1 To 10 Me.Controls("txtTot" & i).Value = Format(Val(Me.Controls("Hrs" & i).Value) * Hours, "0.00") Next i
说明
- 用
Me.Controls("控件名")可根据动态拼接的名称获取表单对应控件,避免重复编写相同逻辑 Val()用于将文本框内容转为数值,避免非数字内容引发计算错误- 需确保
Hours变量已正确赋值,且表单上确实存在Hrs1至Hrs10、txtTot1至txtTot10这些文本框控件
内容的提问来源于stack exchange,提问作者Jack van Hoof
相关产品推荐
相关产品推荐

