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

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

相关推荐
门前云梦4 小时前
ollama+open-webui本地部署自己的模型到d盘+两种open-webui部署方式(详细步骤+大量贴图)
前端·经验分享·笔记·语言模型·node.js·github·pip
骁的小小站4 小时前
The Missing Semester of Your CS Education 学习笔记以及一些拓展知识(六)
linux·经验分享·笔记·学习·bash
LAM LAB5 小时前
【WPS】office邮件合并,怎么将数据源excel中的下一条拼接在文档中的下一个位置
excel·wps
SEO-狼术8 小时前
Document Solutions for Excel, .NET
excel
m0_564264189 小时前
开源数据库E-R图绘制工具分享
数据库·经验分享·mysql·e-r图·开源工具
花海如潮淹10 小时前
API安全监测工具:数字经济的免疫哨兵
网络·经验分享·笔记·安全
TeleostNaCl11 小时前
在OpenWrt上使用udpxy同时实现在机顶盒和Potplayer等直播流软件观看IPTV直播的方法
网络·经验分享·电视盒子·智能电视·tv·电视
智者知已应修善业1 天前
【C# 找最大值、最小值和平均值及大于个数和值】2022-9-23
经验分享·笔记·算法·c#
YGY Webgis糕手之路1 天前
OpenLayers 快速入门(六)Interaction 对象
前端·vue.js·经验分享·笔记·web
Access开发易登软件1 天前
Access开发一键删除Excel指定工作表
服务器·前端·后端·excel·vba·access·access开发