excel VBA checkbox 多个复选框 70
如下图,我做了一个录入窗体,有四个复选框,从上到下依次是复选框1234,想要实现的是:当复选框1勾选时,执行以下语句:WithActiveSheet.Range("C6"...
如下图,我做了一个录入窗体,有四个复选框,从上到下依次是 复选框1 2 3 4,想要实现的是:当复选框1勾选时,执行以下语句: With ActiveSheet.Range("C6").End(xlDown) .Offset(1, 4) = TextBox1 .Offset(1, 6) = "正常" .Offset(1, 7) = ComboBox1.Value End With当复选框2勾选时,执行以下语句: With ActiveSheet.Range("C6").End(xlDown) .Offset(1, 4) = TextBox1 .Offset(1, 6) = "正常" .Offset(1, 7) = ComboBox1.Value End With当复选框3勾选时,执行以下语句: With ActiveSheet.Range("C6").End(xlDown) .Offset(1, 4) = TextBox1 .Offset(1, 6) = "正常" .Offset(1, 7) = ComboBox1.Value End With复选框4也是如此代码要怎么写呢
这段程序的整体框架是:
Private Sub CommandButton1_Click()
……
End Sub
省略号部分就是上面需要实现的内容 展开
这段程序的整体框架是:
Private Sub CommandButton1_Click()
……
End Sub
省略号部分就是上面需要实现的内容 展开
1个回答
展开全部
这个问题主要是用到VBA 窗体的事件. 单击checkbox事触发修改单元格内容的动作. 具体操作如下:
1.在VBA编辑器中打开你的这个窗体,双击具体的一个CheckBox. 然后会进入此窗体的代码页面.系统会自动帮你建立一个checkbox的单击事件.
Private Sub CheckBox1_Click()
'这里添加你的代码
End Sub
2. 你的代码是通过判断单击的checkbox的状态来执行操作, 这个用到checkbox的Value属性.如:
Private Sub CheckBox1_Click()
If CheckBox1.Value = True Then
With ActiveSheet.Range("A1")
.Offset(1, 0) = "Hello!"
.Offset(2, 0) = TextBox1.Value
End With
Else
With ActiveSheet.Range("A1")
.Offset(1, 0).ClearContents
.Offset(2, 0).ClearContents
End With
End If
End Sub
以上只是举例,没有套用你的代码. 我做了个简单的示例,可以下载查看.
你有4个checkbox最简单的做法就是针对每个checkbox都添加一个单击事件. 单击事件也可以用change事件替代.
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询