Excel通过下拉菜单,显示不同图片

**背景:**有的时候需要通过更改下拉菜单来改变对应的 值/ 图片。

如果是数值的话就是我们常常用的Vlookup,这个可以很简单的实现这个功能。(这个如果不知道请自行百度)

但是如果是图片呢?这个就不常见了,那么可以用Vlookup实现吗?

答案是:不可以。因为在excel里面,图片/形状/图表都是是悬浮于单元格上方的,用vlookup是无法索引到的,vlookup只能索引到单元格的值,而无法索引到图片。

**解决方法:**可以用index和match的组合使用来完成。

首先要知道index是索引的意思,match是匹配的意思。

具体步骤:

首先要知道index(参考范围,行数,列数)的含义。

比如index(B4:C5,2,3)就是代表找出B4:C5区域的第2行第3列的数,也就是D5,返回的就是数值4。

然后要知道match的意思,还是刚才的例子,match表示匹配,第一个是要找的值,第二个是查找的范围(行或者列,不能是行列组合),第三个数找的方法(0代表精确查找)。

比如下图返回的结果就是6,表示5在C列的第6行。

OK,以上就是准备工作了,下面正式开始。

**1.**新建一个list清单(比如在A2~A5里面输入图片1,图片2等等),然后在D1单元格添加该list的下拉菜单。如果不会下拉菜单的,请参考下图,这样就做好了一个下拉菜单。

2,插入几个图片或者形状,拖到b列的单元格上面。

3,自定义名称。

按照下图的方法,自定义个一个名称,取名叫"picture",这个是随意的,中文名也行。

然后在引用位置输入以下公式。

=INDEX(Sheet1!B:B,MATCH(Sheet1!$D2,Sheet1!A:$A,0))

根据前面的学习,我们可以知道这个函数的意思是根据D2的值,在A列寻找匹配的值,比如说D2下拉菜单是图片2,那么匹配的就是第三行,match函数返回3,然后再从B列索引第三行就返回了第三行的东西,然后这个函数被赋予给picture这个自定义名称,当D2发生变化时,picture也发生了变化。

4,选中一个图片(记住是图片,形状好像不行),比如选中B2的风车图片,然后复制,拉到E2上面去,调整合适的位置。

然后选中E2的图片,在上面的函数栏输入"=picture",即给图片赋予了名称。

5,改变D2下拉菜单的值→picture这个名称发生变化,图片和picture关联起来了,所以图片就会发生变化。

-----------------------操作GIF如下图所示-------------------------------------

这样就完成了更改下拉菜单,变动图片的效果了。

相关推荐
PieroPc1 分钟前
Python 写的 智慧记 进销存 辅助 程序 导入导出 excel 可打印
开发语言·python·excel
星河梦瑾9 小时前
SpringBoot相关漏洞学习资料
java·经验分享·spring boot·安全
长潇若雪11 小时前
《类和对象:基础原理全解析(上篇)》
开发语言·c++·经验分享·类和对象
志-AOX13 小时前
C语言入门指南:从零开始的编程之路
经验分享
WANGWUSAN6613 小时前
Python高频写法总结!
java·linux·开发语言·数据库·经验分享·python·编程
赵谨言15 小时前
基于python+django的外卖点餐系统
经验分享·python·毕业设计
stm 学习ing16 小时前
HDLBits训练3
c语言·经验分享·笔记·算法·fpga·eda·verilog hdl
十二测试录16 小时前
Python基础——字符串
开发语言·经验分享·python·程序人生·职场发展
不吃鱼的羊17 小时前
Excel生成DBC脚本源文件
服务器·网络·excel