[TOC] > Sun May 16 2021 15:25:00 GMT+0800 (GMT+08:00) 控件分 **表单控件** 和 **ActiveX** 控件两类。 > ActiveX 的部分,可以参考 WPS API 最近更新的 【宏编辑器 API 参考】 ## 两者差别 * ActiveX 控件拥有一些列的事件方法,而表单控件的事件方法比较单一,主要是用于绑定宏。 * ActiveX 控件可以直接插入到文档中,也可以在用户窗体(UserForm)中部署,需要UserForm作为容器。不能单独插入。而 表单控件 只能插入到文档中。 * 外观样式方面,表单控件可以做得更花里胡哨些,而 ActiveX 控件则显得土里土气。 ## 常见使用场景 在诸多控件中,最常用的是表单按钮(Button)控件 和 ActiveX 命令按钮(CommandButton),主要用来绑定宏、部署宏。其他的控件除非使用 UserForm ,否则很少用到。*个人感觉是这样的*。 ### commandButton 部署宏 > 需要先插入 commandButton 控件。 ```js function CommandButton1_Click(){ Range("A1").Value2 = "Hi" // 又或者执行其他的宏 // _m_example() } ``` 注意: * CommandButton1; 是控件名,不能更改。否则无法绑定事件到控件。 * 更改 caption 不会更改控件名。 * 紧跟的 `_Click` 是控件的点击事件函数,不可以更改。因为它还有其他的方法。 * 总之,外观可以随意更改,但它指定的宏不可以更改宏名。 > 在 MS Office 中支持通过控件属性更改控件名。但 WPS 中不可以。 ### 表单Button 指定宏(绑定宏) 插入一个表单按钮之后,可以在设计模式下,鼠标右键,给它指定一个宏(逻辑上:已经存在的宏可以直接绑定,不存在的宏可以录制),在 WPS 中只能是已经存在的宏,不支持现录,但可以通过点击“新建”,然后为其补充宏。 ```js /** * Button3_Click Macro */ function Button3_Click() { // 补充宏 } ``` 注意: * Button3 是控件名,不可更改。 * _click 事件方法名;不可更改。