VBA表单控件(二)

论坛 期权论坛 期权     
Excel和Access学习笔   2019-7-20 20:30   4610   0

大家好,上节介绍过按钮、数值调节钮和滚动条控件,本节主要演示在工作表中结合函数公式来扩展数值调节钮功能的示例。(滚动条和数值调节钮的使用方法雷同,只使用数值调节钮来演示。)
应 用 示 例1、结合indirect函数

上节介绍过数值调节钮可以让数值依次的变化,可以联想到单元格地址中的“行”是数字,所以如果数字随着数值调节钮变动,单元格的地址也可以变动,那么可以引用的单元格的值就可以随着变动。
下面示例,实现姓名可以随着数值调节钮依次变化。


首先看姓名所在的单元格区域是A2:A7区域,即单元格地址中数值的变动区域是从2到7,步长变化为1。以此来设置数组调节钮的控件格式,设置最小值和最大值以及步长,单元格引用区域暂时放在F2单元格。



那么在单元格中"A"&F2就可以表示单元格地址,随着数值调节钮的变动从A2至A7,然后借助indirect函数公式 =indirect("A"&F2)来引用对应单元格的值。即得到需要的文本。
点击数值调节钮,F2和E2单元格的值同时变化,后面可以把F2的数值用数值调节钮控件盖住。(对indirect函数有问题可以通过蓝色链接查看。)

2、结合vlookup函数

以同样的思路,vookup函数的查找值可以从示例1中的单元格中来直接变化,vlookup函数的第三参数,可以直接用另一个数值调节钮来调节。


查找的区域是A2:C7区域,用vlookup函数的第三参数返回值所在列是2或者3。那么第二数值调节钮的最小值为2,最大值为3,步长为1来设置。


示例中在E5单元格中输入vlookup公式,=VLOOKUP(E2,A2:C7,F5,0),公式中E2查找值在上个示例中已经设置可以变动,查找区域固定,第三参数返回值所在列为F5可以变动。这样通过调节两个数值调节钮就可以实现查找不同的值。



那么以同样的原理,在E4单元格中显示返回的列的表头,即随着数值变化文本横向变动。就是通过改变vlookup函数的第三参数,改变返回值。
注意公式中查找值为A1单元格,查找区域为A1:C1区域,返回列的值使用F5单元格的值可变动,=VLOOKUP(A1,A1:C1,F5,0)。返回值随着F5单元格数值的变化,最后显示结果如图所示。所以如果名字是横向的,也可以用这个思路在设置。
最后为了显示简洁,可以用数值调节钮盖住不需要的变化数值。


今天下雨
本节主要介绍了数值调节钮和函数公式相结合来扩展功能的示例。其中的数值调节钮也可以根据情况来用滚动条来替代,而通过数值调节钮控件改变单元格地址或者函数公式中参数的思路可以用其他方面。祝大家学习快乐。



Live and Learn
微信公众号:EXCEL-NOTE
(长按二维码关注)

分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:45
帖子:9
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP