分享

62·HYPERLINK函数还有这种神奇的用法

 asaser 2022-05-13
上一期推文给大家介绍了HYPERLINK函数的语法和用法,末尾留了个小尾巴

……HYPERLINK是工作表函数中唯一的触摸屏函数;当我们将鼠标放在它所返回的字符串上时,它就已经处于半运行状态了。虽然不会立刻跳转到指定地址,但会自动更新地址参数。利用这个特点,我们可以制作触摸屏性质的交互图表。

图片

这期就给大家分享一下如何制作这种触摸屏性质的交互图表,当鼠标滑过产品名称,即可使图表动态更新。

  准备一份数据源。

图片

严肃脸声明一下,在下祖上三代都在祖国北方种植粮食产物,从不搞军火生意,以上是某玩具厂的虚拟销售数据,Thanks♪(・ω・)ノ

 计算展示数据

在G1单元格输入任意产品的名字,比如飞机。

在G2单元格输入以下公式,并向下复制填充:

=HLOOKUP($G$1,$A$1:$E$23,ROW(A2),0)

公式的作用是根据G1的产品名称查询各个月份的销售数据。

图片

 创建图表

选中G2:G10区域,创建柱形图,调整纵横坐标,制作动态标题,依照个人品味稍加美化。

图片

 让图表动起来

打开VBE编辑器,新建一个模块,复制粘贴以下代码:

Function abc(rng As Range)
    Range("g1").Value = rng.Value
End Function

图片

这是一个自定义函数,只有一个参数,它可以将G1单元格的值设置为参数值。

在I16单元格输入函数公式如下:

=IFERROR(HYPERLINK(abc(B1)),B1&REPT(" ",99))

HYPERLINK(ABC(B1))部分,会返回一个错误值;但它返回啥并不重要。我们只是借助HYPERLINK触摸屏运算的机制,当鼠标滑过它时,自动运算第一参数,也就是abc(B1)。abc是我们前面设置的自定义函数,它会将B1的值写入G1单元格,也就是将G1的值修改为飞机。

B1&REPT(" ",99)部分,借助IFERROR函数容错的特性,返回B1单元格的值+99个空格。数量如此众多的空格,是为了在凌晨就将单元格孤寂的欲望填满,当鼠标滑过单元格,即可触发HYPERLINK运算。

以同样的方式设置I17/I18/I19单元格,相关公式如下:

=IFERROR(HYPERLINK(abc(C1)),C1&REPT(" ",99))
=IFERROR(HYPERLINK(abc(D1)),E1&REPT(" ",99))
=IFERROR(HYPERLINK(abc(E1)),E1&REPT(" ",99))

如此一个简单的触摸屏交互图表就制作完成了。再瞅一眼,文末下载案例文件动手试一下吧。照例啥问题可在VIP会员群中提问交流。右下角点个赞,左上角点关注,咱们明天再见。

图片

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多