目前 我在EXCEL 中 有 50个CheckBox: CheckBox1~CheckBox50VB 中需要对其进行判断;IF CheckBox1=True then A=A+1IF CheckBox1=False then A=AIF CheckBox2=True then A=A+1IF CheckBox2=False then A=A.......IF CheckBox2=True then A=A+1IF CheckBox2=False then A=A以上 要写 N遍。但用循环 : For n=1 to 50IF CheckBox+n =True then A=A+1IF CheckBox+n=False then A=Anext(以上 又完全错误,要如何实现循环啊,避免写IF N回 )
1 回答
Qyouu
TA贡献1786条经验 获得超11个赞
1:首先对象CheckBox不能加变量n,对象是对象,变量是变量,不能搞在一起+- × ÷。。。
2.CheckBox对象的值,是0或1,不是True或False。
3:如果你知道Excel中对象CheckBox个数是1~50,那可以这样试试。
'必需先引用Microsoft Excel 11.0 Object Library
Dim x As Integer, wBook As Workbook, wSheet As Worksheet, AppExcel As Excel.Application
Set AppExcel = CreateObject("Excel.Application")
AppExcel.Visible = False'不可见
If AppExcel Is Nothing Then Exit Sub'创建对象失败退出
Set wBook = AppExcel.Workbooks.Open(FileName)'文件名,路径自己设置
Set wSheet = AppExcel.Sheets(1)'CheckBox对象在x个表格,那你设定x表格,这里先设1
For x = 1 To 50
if wSheet.OLEObjects(CStr("CheckBox" & x)).Object.Value=0 then
A=A
Else
A=A+1
Endif
Next
添加回答
举报
0/150
提交
取消