- 41
- 0
- 约4.91千字
- 约 10页
- 2017-07-09 发布于河南
- 举报
Excel 中ActiveX控件与公式与VBA互动
Excel?中ActiveX控件与公式及VBA的互动
作者:顾斌 ? 来源:本站原创 ? 更新:12/15/2005
Microsoft Excel作为制作电子表格的利器,除了拥有功能强大的内建函数,用于执行简单或复杂的计算以外,还拥有很多自动化的功能。特别是自Excel 97以后,随着ActiveX控件的嵌入以及VBA的强化,利用Microsoft Excel可以制作出自动化程度更高、功能更为强大的电子表格,因而在我们的工作及生活中也得到越来越广泛的应用。本篇以一个实际案例从一个侧面来阐述在Excel 中,配合使用公式、ActiveX控件及VBA,可以起到事半功倍的效果。 《营养指南》是在Microsoft Excel中制作的一款具有一定实用价值的电子表格,包含5个工作模块,分别由5张工作表完成,可以提供570多种常用食物的营养成分查询、提供单一营养素在不同食物中的含量丰富程度查询以及提供个性化的“营养分析师”,帮助您规划自己的饮食,或提供营养补充之参考等功能。主界面图一所示: 图一:工作表主界面
限于篇幅,这里就以上主题引用第一个功能模块“常用食品营养成分查询”稍加阐述,以期抛砖引玉。“常用食品营养成分查询”工作表已命名为“Food_Composition”,该工作表中共使用了三个控件:两个列表框(ListBox)控件和一个文本框(TextBox)控件,工作表界面及控件说明如图二所示: 图二:“常用食品营养成分查询”之工作表界面及控件说明 由于食物名称及种类繁多,如果单靠一个列表框或使用单元格数据有效性之序列等方法来进行选择,或利用树状结构等方法来实现该功能的话,列表会变得很长且可读性较差,会给实际使用带来较大的不方便。而使用两个适当高度的列表框,一个用来列示食物的大类(表中为ListBoxFoodMainType),当选定某类食物时,再使用另一个列表框来列示所有属于该类食物的食品名称以供用户选择(表中为食物小类列表框ListBoxFoodSubType),则比较符合使用习惯,也能正确反应出数据结构和相互之间的关联性,所以这里使用了两个列表框,它们之间的互动也就是本篇要讲述的内容。 这两个列表框控件的属性设置是不一样的,其中,ListBoxFoodMainType的MultiSelect属性设置为fmMultiSelectSingle,这可以给列表框中的选项制造选项按钮的效果,使工作表看起来更为生动,也符合我们的使用习惯;而ListBoxFoodSubType的MultiSelect属性为默认值以维持整体感,两者的背景及前景颜色分别设为浅蓝色及深蓝色,以保持工作表界面色系的统一,改观工作表的视觉效果。 友情提示:工作表中控件属性的设置 在工作表中点击菜单-视图-工具栏-Visual Basic,然后点击设计模式图标 ,之后右击相关控件,选择“属性”即可打开属性对话框,在属性对话框中可以对该控件进行各项属性设置。 要使控件实现丰富的功能,达成预期目的,就必须将之与工作表和/或VBA代码联系起来。下面我们就给这两个ListBox控件添加相关内容,同时介绍工作表中使用的一些公式。 首先给食物大类列表框ListBoxFoodMainType添加列表项。给列表框添加列表项可以通过设置其ListFillRange属性来完成,比如有A、B、C、D四个选项,保存在当前工作表的A1到A4单元格中,那么要将这四个选项添加到列表框控件中,只要在该列表框的ListFillRange属性中填上“A1:A4”即可,它的意思是告诉列表框从A1到A4单元格中提取数据作为列表项。但是,如果待添加的数据项不在当前工作表中的话,就不能用这种方式来加载列表框的数据源,但实际工作中,为了便于数据的管理和维护,经常会把一些常用数据放在另一个工作表中以待引用,这时候,我们可以通过命名待引用数据源区域,然后将该名称赋值给ListFillRange属性即可实现跨工作表的数据引用,在本例中,所有待引用数据均放置在一个名为“DATA”的工作表中(该工作表通常处于隐藏状态),并预先对不同类别的数据区域进行了命名以供不同的控件引用,食物大类列表框ListBoxFoodMainType的列表项数据源在此命名为List_Food_Type_Main,如图三所示,图四为ListFillRange的属性设置: 图三:数据源List_Food_Type_Main
图四:ListFillRange属性设置:?
? 接下来就是构筑这两个列表框之间的连通。从以上的分析得知,当我们选中某类食物时,只要能动态获取该类食物中所有食品名称的列表,并将该列表传递给食物小类列表框作为其列表项,就可以
您可能关注的文档
- 2014年最新亚马逊卖家运营测试-试题与答案-开店考试-满分.doc
- 2014年招警考试:申论范文之树立正确政绩观.doc
- 2014年关于个人所得税问题通知.doc
- 2013年八年级语文上册 第二单元 8《台阶》 新人教版.ppt
- 2014年江西省省内知名专科与其特色专业.doc
- 2014年第六课_求索真理历程.ppt
- 2014届高考语文二轮复习 (教师):15.2审题与立意.ppt
- 2014试题与答案内镜.doc
- 20150421对《张明楷谈律师刑事辩护应注意六大问题》有感.doc
- 2015守纪律讲规矩自查分析报告与整改措施.doc
- 广西南宁2025-2026秋季期末八年级【语文】试卷(含答案).pdf
- 广西南宁2025-2026秋季期末高一化学试卷(含答案).pdf
- 广西南宁2025-2026秋季期末九年级数学试卷(含答案).pdf
- 广西南宁2025-2026秋季期末高一英语(含答案,无听力音频).pdf
- 广西南宁2025-2026秋季期末高一地理试卷(含答案).pdf
- 内科护理(中职):心包疾病病人的护理PPT教学课件.ppt
- 胆管结石的中医护理方法.ppt
- 内科护理(中职):心肌疾病病人的护理PPT教学课件.ppt
- 内科护理(中职):心律失常病人的护理PPT教学课件.ppt
- 嵌入式系统实践及工程应用—从基础到人工智能:具备AI算力的嵌入式系统开发PPT教学课件.pptx
最近下载
- 长兴岛北疏港高速公路环境影响报告书简本公告.pptx VIP
- 胸腺肿瘤防治指南2026.docx
- 成人2型糖尿病口服降糖药联合治疗专家共识(2025版)解读PPT课件.pptx VIP
- 五年级语文寒假阅读理解题专项训练(20篇含答案解析).docx VIP
- 2023年河南省高考数学试卷(理科)(乙卷).docx VIP
- 红森HSX1伺服使用说明书.pdf
- T_CRHA 086-2024 住院患者胰岛素泵应用护理规范.docx VIP
- fagor发格CNC 8055_T_操作手册.pdf
- 从《初来乍到》分析中美教育观的差异.docx
- (一模)2026年合肥市2026届高三第一次教学质量检测 英语试卷(含官方答案).docx
原创力文档

文档评论(0)