如何在vba中引用和控制表单控件

ymzhangyaming03 2009-08-02 07:07:42
excel的控件分标准控件和表单控件,在vba中可以很方便的引用和控制标准控件;但在vba中该如何引用和控制表单控件?比如,我在工作表中添加一个复选框和文本框,当选中复选框时,就显示这个文本框;当未选中这个复选框时,就隐藏 这个文本框.请问,在vba中该如何编写这个程序?表单控件的名称与事件该如何获取?
...全文
2301 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
phoenixx123 2010-12-11
  • 打赏
  • 举报
回复
在这里顺便说一下,想要删除表单控件,右击,然后del键就可以删除了。
lqnoway 2009-08-06
  • 打赏
  • 举报
回复
是一个excel vba自定义的常量,它的值为-1,表示复选框被选中。
ymzhangyaming03 2009-08-06
  • 打赏
  • 举报
回复
请问,Sheet1.CheckBoxes("Check Box 1").Value = xlOn 中的xlon是什么意思?
lqnoway 2009-08-04
  • 打赏
  • 举报
回复
在工作表创建form控件后,
右件点中form控件
观察它的caption(在左上角的名称框内,也就是A1的斜角显示的名字),
其中的数字就是变量名中的数字
然后数字前加上Label 就是标签的名称了。
如果不知道英文的写法,你就将你创建的过程,用宏记录下来,
看录制的宏代码就可以看到了。
当然搜索帮助文件资料更加完备些。
ymzhangyaming03 2009-08-03
  • 打赏
  • 举报
回复
要引用表单控件,首先要获取表单控件的名称.如何才能获取某个表单控件的名称?
lqnoway 2009-08-02
  • 打赏
  • 举报
回复
指定宏的方法:

在标准模块中输入过程代码,
然后右键点表单(Form)控件,
指定宏完成该控件的click事件和宏的关连。

lqnoway 2009-08-02
  • 打赏
  • 举报
回复
VBA Fans中有一篇文章可以加深你对两种表单的理解
具体如下:
Excel中的窗体控件和ActiveX控件
http://www.vbafan.com/2009/01/21/excel-form-controls-and-activex-controls/
lqnoway 2009-08-02
  • 打赏
  • 举报
回复


Sub CheckBoxClick()
'
' lqnoway 记录的宏 2009-8-2
'因为form控件中是没有text控件的,
'所以以下例子用label代替
'
'假设在工作表sheet1中存在checkbox和Label
'名字分别为Check Box 1和Label 2
'名字是固定的,数字分别从1到n,按控件产生的总数量自动增加
'可以点中form控件观察它的caption,其中的数字就是变量名中的数字
'
'引用对象方法为
'Sheet1.CheckBoxes("Check Box 1")
'Sheet1.Labels("Label 2")
'
'该过程的引用通过指定宏给checkbox来完成

' 完整的逻辑表达如下
' If Sheet1.CheckBoxes("Check Box 1").Value = xlOn Then
' Sheet1.Labels("Label 2").Visible = True
' Else
' Sheet1.Labels("Label 2").Visible = False
' End If
'方便的代码如下
Sheet1.Labels("Label 2").Visible = (Sheet1.CheckBoxes("Check Box 1").Value = xlOn)
End Sub

5,174

社区成员

发帖
与我相关
我的任务
社区描述
其他开发语言 Office开发/ VBA
社区管理员
  • Office开发/ VBA社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧