引子:学好并熟练运用Excel函数将能发挥出Excel无尽的威力。然而,Excel有几百个函数,要想将它们全都熟练掌握是一件非常困难的事。并且,函数之间的相互配合,变化多端,有着多种多样的使用情形。如果我们随时能够查阅到各个函数详细的语法和使用说明,并且有丰富的示例作为参考,那一定非常有助于我们解决问题,也有利于我们函数运用水平的精进。
今天给出的这个工具——Excel函数宝典,就是想要将Excel函数集中在一起,不仅有详细的语法和使用说明,还有丰富的参考示例,便于学习,便于查阅参考。
由于时间有限,整理全部的Excel函数语法以及应用示例并不是三两天就能完成的。因此,这里先给出工具的架构,以及功能演示,听听大家的意见,我再进行完善。
“Excel函数宝典”的功能
“Excel函数宝典”实际上就是Excel函数库,力图汇集所有的Excel函数,甚至有用的自定义函数。主要功能有:
l查找想要的函数并给出该函数的详细语法和使用说明。
²输入函数名后查找
²在分类框中选择想要的函数后查找
l方便获取每个函数的应用示例,作为参考。
“Excel函数宝典”的使用
可以在工作表界面中输入想要查找的函数,也可以在弹出的用户窗体中输入想要查找的函数,单击“查找”按钮查找到该函数的详细语法和使用说明。
找到函数后,单击“详细示例”按钮,调出包含关于该函数详细信息以及应用示例的工作簿文档。
下面的视频演示了如何使用“Excel函数宝典”。
“Excel函数宝典“的设计
工作表设计
下图1所示为工作表主界面,在命名为“SearchFuncName”的单元格中输入函数名,单击右侧的“查找”按钮,即可调出相关函数信息。
图1
“函数库”工作表存放全部函数的基本信息,包括函数名、类别、版本、作用、语法、参数说明。包含着函数名的区域:
名称:FuncName = OFFSET(函数库!$A$3,0,0,COUNTA(函数库!$A:$A)-2,1)
“数据”工作表存放程序后台需要的数据,包含着一些命名区域。
函数类别名:Cate
引用位置:=OFFSET(数据!$A$2,0,0,COUNTA(数据!$A:$A)-1,1)
各分类的名称所代表的区域:
名称:查找与引用
引用位置:=OFFSET(数据!$D4,0,0,COUNTA(数据!$D:$D)-1,1)
名称:文本
引用位置:=OFFSET(数据!$E$2,0,0,COUNTA(数据!$E:$E)-1,1)
……
用户窗体设计
在VBE中,插入用户窗体,放置相应的控件,设置控件格式并命名,如图2所示。
图2
函数工作簿
函数工作簿包括函数的详细信息及应用示例,如图3所示。
图3
编写代码
工作表代码
在“主界面”工作表的Activate事件中,输入下面的代码:
Private Sub
Worksheet_Activate()
[SearchFuncName] = "在这里输入你要查找的函数名"
[SearchFuncName].Select
End Sub
每次激活该工作表时,代码在命名为“SearchFuncName”的单元格中输入提示信息,并选择该单元格。
Sub wsFindButtonClick()
ufmFunc.Show
End Sub
单击工作表中的“查找”按钮时,调出用户窗体。
用户窗体代码
用户窗体初始化代码:
Private Sub
UserForm_Initialize()
'在类别组合框中输入类别项
cmbCate.List =Application.Transpose([Cate])
'查找名称SearchFuncName单元格中函数的信息
FindData (Trim([SearchFuncName]))
End Sub
“函数类别”组合框代码:
当“函数类别”组合框中的内容改变量,用相应的函数名填充“函数名称”组合框,同时清除函数信息文本框中的内容。
单击“查找”按钮的代码:
Private Sub
cmdFindByName_Click()
[SearchFuncName] = txtFind.Text
FindData (txtFind.Text)
End Sub
单击“通过类别查找”按钮的代码:
Private Sub
cmdFindByCate_Click()
txtFind.Text = ""
[SearchFuncName] = cmbFunc.Text
FindData (cmbFunc.Text)
End Sub
查找数据代码:
根据传递给子过程的值,在“函数库”工作表中查找到相应的函数,并将函数信息输入到用户窗体上相应的文本框中。
下面的子过程用于清除文本框中的数据:
Sub ClearData()
txtName.Text = ""
txtCate.Text = ""
txtVer.Text = ""
txtUse.Text = ""
txtSyntax.Text = ""
txtPara.Text = ""
End Sub
“详细示例”按钮代码:
Private Sub cmdSample_Click()
OpenFunctionWB (cmbFunc.Text)
Unload Me
End Sub
打开与函数名相同的函数工作簿,同时卸载用户窗体。
“关闭”按钮代码:
Private Sub cmdClose_Click()
Unload Me
End Sub
其他代码
OpenFunctionWB过程用于打开指定的工作簿:
bIsBookOpen函数用于判断工作簿是否已打开:
结语
这个应用程序界面设计和架构的搭建基本完成,主要需要完善的是:
l收集整理并补充Excel函数的应用示例。(首先是以从Contextures Blog整理出的《带你快速学会30个Excel函数》为基础,将这30个函数工作簿整理完善)
在此其础上:
l美化界面并扩展功能。
希望有兴趣的朋友能够多提宝贵建议!
本文同时发表于【完美 Excel】微信公众号:excelperfect
要下载Excel函数宝典(测试版)在【完美Excel】公众号底部发送消息:excelperfect
网友评论