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
省略号部分就是上面需要实现的内容
展开
 我来答
一年孤独58aa
2016-05-24 · TA获得超过1404个赞
知道小有建树答主
回答量:592
采纳率:92%
帮助的人:440万
展开全部

这个问题主要是用到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事件替代.

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式