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如下图所示-------------------------------------

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

相关推荐
一行注释13 小时前
纯前端通过xlsx.js导出Excel表格:完整示例与实战指南
前端·javascript·excel
QuartusII713 小时前
Excel中alt+enter单元格内无法换行
excel
Arya_aa14 小时前
EasyExcel读和写
excel
冷咖啡离 我的笨笨14 小时前
数据去重:通过 C# 删除 Excel 中的重复行
开发语言·c#·excel
Marhoosh17 小时前
Excel跨表匹配工具|多表批量查找、提取与汇总
excel·excel技巧·跨表匹配
Thom58018 小时前
【聚宽 JoinQuant】聚宽如何获取持仓和订单?get_orders()与get_open_orders()教程
人工智能·经验分享·量化交易·聚宽·量化编程
TechWJ18 小时前
Excel报表越做越乱?用Metabase搭建可更新的数据仪表盘
docker·数据分析·excel·metabase·报表工具
用户2986985301420 小时前
无需安装 Excel,也能轻松将 CSV 转为 XLS 或 XLSX
后端·c#·excel
三流架构师20 小时前
产品经理资料合集
经验分享
依然鸣20 小时前
蓝桥杯多校模拟赛(第二场)题解
数据结构·c++·经验分享·学习·算法·图论