乔山办公网我们一直在努力
您的位置:乔山办公网 > excel表格制作 > <em>excel</em> <em>VBA</em> checkbox

<em>excel</em> <em>VBA</em> checkbox

作者:乔山办公网日期:

返回目录:excel表格制作


以下代码循环当前窗体上的所有控件,如果存在复选框控件,则将控件状态取反。希望对你有帮助
Dim nControl as Control
For Each nControl In Me.Controls
If TypeName(nControl ) = "CheckBox" Then
nControl .Value = Not nControl .Value
End If
Next

再给你段代码,按控件名设置zd状态(将CheckBox1等换成你的控件名):
Dim ctlArray as Variant
Dim i As Integer
ctlArray = Array("CheckBox1", "CheckBox2", "CheckBox3")
For i = 0 To Ubound(ctlArray)
Me.Controls(ctlArray(i)).Value = Not Me.Controls(ctlArray(i)).Value
Next i

这个问题主要是用到VBA 窗体的事件. 单击checkbox事触发修改单元e799bee5baa6e79fa5e98193e58685e5aeb9363格内容的动作. 具体操作如下:

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事件替代.


软件版本:Office2007

方法如下:

1.可以通过录制宏,插入一个复选框,然后查看代码如下:

2.然后修改代码成为我们想要的,ActiveSheet即工作表,我们改成Sheet1

四个数据,分别是距离顶端位置,距离左边位置,复选框长度,复选框高度(可以更改数值,看看复选框的变化,就能知道每个数据的意思),改成我们需要的,如果是在某个单元格中,可以利用range的top和left选项获得单元格的位置,如下图所示代码:

3.F5执行代码,返回Excel,就可以看到插入的复选框:



常量数组中的参数也没有21个吧。
Nums = Array(14, 15, 16, 18, 21, 24, 27, 30, 33, 36)
好像只有10个
循环运行了21次

相关阅读

  • <em>excel</em> <em>VBA</em> checkbox

  • 乔山办公网excel表格制作
  • 以下代码循环当前窗体上的所有控件抄,如果存在复选框控件,则将控件状态取反。希望对你有帮助袭Dim nControl as Control For Each nControl In Me.Controls If TypeName(nControl ) = "CheckBox" Then
  • 谁有《<em>excel</em> 2013 <em>VBA</em>入

  • 乔山办公网excel表格制作
  • 书名=玩转微信实用攻略作者=赵黎著页码=166 ISBN=978-7-5021-9495-6出版社=北京:石油工业出版社 , 2013.05 附件已经上传Excel VBA 其实很简单》的完整电子版" src="/uploads/tu/878.jpg" style=
  • <em>Excel</em> <em>vba</em> 问题-excel

  • 乔山办公网excel表格制作
  • 通常情况下,我们应该避开zhidao重复打开文件,如果你略懂VBA,请使用下面代码测试:将你的WOrkBooks.Open("D:\xx.xls")改成如下:Dim Wb as WorkBook 定义一个专wb工作簿变量On Error Resume Next 容
关键词不能为空
极力推荐
  • <em>vba</em> <em>数组赋值</em>,<em>

  • EXCEL表的单元复格区域是一个二维数组dim arrarr=Sheet3.Range("D7:D9")这时的arr得到的是制二维数组你要转换成1维数组,先声明一个动态数组再重定义为知1维数组dim brr()redim brr(1 to ubound(arr))再

ppt怎么做_excel表格制作_office365_word文档_365办公网