尽管可以通过VBA调用Excel中的部分内置对话框,但这些对话框并不能满足所有需求。 按列信息拆分数据,是一个较为常见的问题。为了让拆分数据的过程能适用不同样式和 结构的工作表,可以在执行拆分操作前进行一些设置。例如,设置要拆分的数据区域、数据 表包含的表头区域、按哪列信息拆分、拆分的方式等。 内置对话框不能满足 程序执行的所有需求 设计个性化的交互界面,可能需要一个自定义的对话框来完成这些设置。 ![]() 图 8-28 数据表 图 8 - 29 展示了一个可以用来设置拆分数据选项的简易对话框。 ![]() 图 8-29 自定义的拆分数据对话框 控件, 设置交互界面必不可少的“素材” 在Excel中设计和创建个性化的交互界面,就是根据需求在工作表或窗体中添加控件,使它们能有效地接收、传递各种指令。所以,在开始设计用户界面前,有必要先认识Excel里的控件。 Excel中有两种类型的控件:表单控件和ActiveX控件。可以在Excel的【开发工具】选项卡中找到它们,如图 8 - 30 所示。 ![]() 图 8-30 Excel中的两种控件 创建在VBA中使用的操作界面,通常使用的是ActiveX控件。 在工作表中使用 ActiveX 控件 Excel 中的 ActiveX 控件 默认情况下,在【功能区】的【开发工具】选项卡中可以看到部分ActiveX控件,如图 8-31 所示。 ![]() 图 8-31 【开发工具】选项卡中可以看到的ActiveX控件 但能在工作表中使用的ActiveX控件远不止这些, 可以单击【其他控件】按钮,在弹出的对话框中选择使 用其他控件,如图 8 - 32 所示。 ![]() 图 8-32 其他ActiveX控件 在工作表中添加一个选项按钮 在【开发工具】选项卡中选择某个ActiveX控件,按住鼠标左键拖动鼠标即可将该控件添加到工作表中。图 8 - 33 所示为在工作表中添加一个选项按钮的操作步骤。 ![]() 图 8-33 在工作表中添加选项按钮 设置选项按钮控件的格式 ActiveX 控件的格式需要在【属性窗口】中设置,在控件处于可编辑状态(设计模式)时,单击【开发工具】选项卡中的【属性】按钮即可调出【属性窗口】,如图 8 - 34 所示。 ![]() 图 8-34 调出【属性窗口】 【属性窗口】中列出了当前选中控件的各种属性,可以通过修改控件的属性来设置控件,如设置控件的名称,更改控件的外观等,如图 8 - 35 所示。 ![]() 图 8-35 设置选项按钮 用同样的方法再绘制一个标签为“女”、名称为“xb 2”的选项按钮,如图 8 -36 所示。 ![]() 图 8-36 新添加的选项按钮 如果要新建的控件与现有控件的外观相同,可以通过直接复制控件的方式得到,如本例 中的“xb 2”就可以直接复制“xb 1”得到,这样会省去设置控件外观的步骤。 编写代码,为控件设置功能 ActiveX控件需要编写VBA代码来指定其功能。如果想知道用户选择的是“男”还是 “女”,就应分别给这两个控件编写相应功能的VBA代码。想要为“xb 1”控件(显示为“男”的控件)添加代码,首先得调出该控件所在工作表的【代码窗口】,如图 8 - 37 所示。 ![]() 图 8-37 调出控件所在对象的【代码窗口】 在该事件过程中增加要执行的VBA代码,如: ![]() ![]() 用同样的方法为控件“xb 2”编写事件过程: ![]() 写完的代码如图 8 - 38 所示。 ![]() 图 8-38 为控件添加的代码 在工作表中使用选项按钮设置好控件的功能后,返回工作表区域,依次单击【功能区】中的【开发工具】→【设 计模式】命令退出对控件的编辑,插入的控件就可以使用了,如图 8 - 39 所示。 ![]() 图 8-39 在工作表中使用选项按钮 对于已经添加到工作表中的ActiveX控件,得先切换到设计模式之后才能重新编辑或设置控件。 这就是在工作表中使用选项按钮控件的基本步骤,其他ActiveX 控件可以参照这种方法来设置使用。 在工作表中设计程序交互界面 Excel的工作表就像一张现成的画布,可以在这张画布中添加控件,设计一些简单的交互界面。图 8 - 40 所示是在Excel中建立的,保存单位职工档案信息的简易数据库。 ![]() 图 8-40 职工档案信息 为了便于管理这些数据,可以设计一个类似图 8 - 41 所示的职工信息管理界面。 ![]() 图 8-41 职工信息管理界面 学会了吗?快速提高你的效率吧!从此变“excel一秒超人”! ![]() |
|
来自: hercules028 > 《VBA》