我们都知道当数据过多的时候,我们制作Excel图表就会显得非常的复杂,图表上面的内容就会特别多。Excel老玩家就会想到用切片器制作动态可变化的图表来显示。今天我们就来学习一下一个比......
2023-01-08
如何根据单元格是否有值,取到对应行的标题(应该是对应列标题,属于提问描述有误)?并且每行中有且只有一个非空单元格。
考虑到数据隐私,我自己模拟了一个简单的表格,来看如何解决这个问题。
▲ 教学案例模拟
如图,左侧表格记录的是A、B、C、D、E5名选手在一项比赛的用时,总共4局,只记录唯一一个成功的选手及用时,记录了4行。现在要求在I列处,将每一局成功的选手提取出来。请考虑1分钟,如果是你,你会使用什么方法?今天,徐老师跟大家分享两种方法。
方法1:数组法
对这个问题,大多数人的思考逻辑是:在每一行数据中,挨个判断每个单元格是不是非空,如果是,则将对应列标题提取出来。逻辑很简单,但是真的写起来是有难度的,需要对函数、对数组有着非常熟练的掌握。
挨个判断每个单元格——须用到数组;
是不是非空单元格——NOT(ISBLANK())
找到对应标题的单元格地址——ADDRESS(所在行,所在列)
提取对应标题——INDIRECT(ADDRESS())
所以你看,首先你得知道EXCEL里有ISBLANK、ADDRESS、INDIRECT等等这些函数,然后才有可能想起它们,将思路拆解并转化为每一步公式。否则,即使你的思路再清晰也没用!学习EXCEL,就是帮助我们把有思路真正转化为有效思考,否则就是空中楼阁。经过拆解后,下面来看我写的公式:
公式:{=INDIRECT(ADDRESS(2,MAX(IF(NOT(ISBLANK(C3:G3)),COLUMN(C3:G3),0)))) }
利用数组公式判断一行中每个单元格是否为非空,如果是则返回对应的列号(COLUMN函数),否则返回0。这样IF函数返回的就是一个数组,以第1局为例,返回结果为{0,4,0,0,0}。IF外面嵌套MAX函数,从数组中求出最大值,以第1局为例,即为4。再用ADDRESS(2,4)计算出对应标题的单元格地址,即$D$2单元格,最后用INDIRECT函数返回文本指向的单元格,得到$D$2对应值——B。其它几行, 同样的公式。
相关文章
我们都知道当数据过多的时候,我们制作Excel图表就会显得非常的复杂,图表上面的内容就会特别多。Excel老玩家就会想到用切片器制作动态可变化的图表来显示。今天我们就来学习一下一个比......
2023-01-08
在工作中,可能许多朋友都会碰到一个情况,那就是工作簿和工作表数据的合并操作。如何将上百个工作簿快速合并到一个表格中,许多朋友可能会觉得不可思议。今天我们就来教大家学习一......
2023-01-08
今天在这里为你分享5个Excel文本函数,这些拆分和组合函数,你一定会用上的。①LEFT函数公式:=LEFT(A2,1)在Excel表格中,需要想要拆分汉字,想从哪里开始就从那哪里开始。首先选定单元格......
2023-01-08
相信大家也和我一样,才开始看到Excel可以当做翻译软件的时候会很好奇,这究竟是怎样做到的?其实,这个方法并不是很难,它是由一个函数公式而制作出来的,好了,首先我们一起来看看成......
2023-01-08
函数可以说是所用快捷方法中最为简单的一种方法,为什么很多人认为函数用起来很难了?主要是因为它拥有很长的函数公式,记不住。其实不管是学Excel函数,还是学习其他的一些快捷方法......
2023-01-08