我有五个控件,分别为CheckBox1,CheckBox2,CheckBox3,CheckBox4,CheckBox5
我想不用像以下代码那么麻烦一个一个写,实现控件的遍历。哪位高手可以指点下:源程序:
Private Sub CheckBox1_Click()
i = CheckBox1.Value
If i = -1 Then
Cells(16, 2).Value = 1
Else
Cells(16, 2) = 0
End If
End SubPrivate Sub CheckBox2_Click()
k = CheckBox2.Value
If k = -1 Then
Cells(16, 3).Value = 2
Else
Cells(16, 3) = 0
End If
End SubPrivate Sub CheckBox3_Click()
k = CheckBox3.Value
If k = -1 Then
Cells(16, 3).Value = 3
Else
Cells(16, 3) = 0
End If
End SubPrivate Sub CheckBox4_Click()
k = CheckBox4.Value
If k = -1 Then
Cells(16, 4).Value = 4
Else
Cells(16, 4) = 0
End If
End SubPrivate Sub CheckBox5_Click()
k = CheckBox5.Value
If k = -1 Then
Cells(16, 5).Value = 5
Else
Cells(16, 5) = 0
End If
End Sub
我想不用像以下代码那么麻烦一个一个写,实现控件的遍历。哪位高手可以指点下:源程序:
Private Sub CheckBox1_Click()
i = CheckBox1.Value
If i = -1 Then
Cells(16, 2).Value = 1
Else
Cells(16, 2) = 0
End If
End SubPrivate Sub CheckBox2_Click()
k = CheckBox2.Value
If k = -1 Then
Cells(16, 3).Value = 2
Else
Cells(16, 3) = 0
End If
End SubPrivate Sub CheckBox3_Click()
k = CheckBox3.Value
If k = -1 Then
Cells(16, 3).Value = 3
Else
Cells(16, 3) = 0
End If
End SubPrivate Sub CheckBox4_Click()
k = CheckBox4.Value
If k = -1 Then
Cells(16, 4).Value = 4
Else
Cells(16, 4) = 0
End If
End SubPrivate Sub CheckBox5_Click()
k = CheckBox5.Value
If k = -1 Then
Cells(16, 5).Value = 5
Else
Cells(16, 5) = 0
End If
End Sub
解决方案 »
- vb中如何一次性插入多笔数据
- byte怎样写入到数据库中,怎样读出
- 我写的一个支持GBK的拼音反查DLL,要的进来!
- 学习VB,请教高手指点教材
- 请高人解答!在datagrid中总是会少删除一条记录?
- 关于数据统计的问题,期待高手给出代码
- 编写访问网页的程序时遇到麻烦问题!急~~~~~~~~~~~~ 求助求助
- 高高分:如何直接从WDM或VFW视频设备抓图???在线等待!!!UP有分!
- 请教咯~CommonDialog打开文件的格式如何?顺便所求放大,缩小图片的代码!
- 这是清华同方的软件吗?我真为中国感到丢人!还什么中国科技十强!!!!!
- 怎样将图片按原大小插入到EXCEL中
- 一台电脑连接两台打印机,如何在vb程序中指定使用哪台打印机
If Me.Controls("check" & n).Value Then
Cells(16, i + 1).Value = 1
Else
Cells(16, i + 1).Value = 0
End If
End SubPrivate Sub Check1_Click()
CheckTest 1
End SubPrivate Sub Check2_Click()
CheckTest 2
End Sub
......
选中第一个控件时,就在cells(16,1)显示1,没点中就null
选中第二个空间时候,就在cells(16,2)显示2...
如此类推...
用控件数组:Private Sub CheckBox1_Click(Byval Index As Integer)
If CheckBox1(Index) = vbChecked Then
Cells(16, Index + 1).Value = 1
Else
Cells(16, Index + 1) = 0
End If
End Sub
Sub CheckTest(n As Long)
If Me.Controls("check" & n).Value Then
Cells(16, i + 1).Value = 1
Else
Cells(16, i + 1).Value = 0
End If
End Sub
改为
Sub CheckTest(n As Long)
If Me.Controls("check" & n).Value Then
Cells(16, n ).Value = n
Else
Cells(16, n ).Value = 0
End If
End Sub
在模块里面没有me.control属性,怎么办呢?