巴黎浪漫兵人
发表于 2021-10-28 07:05:26
当时我也考虑直接填写数字7但是万一他把栏位名称更换成别的了 还要回去修改公式比较麻烦所以就填写公式了
雨润恩泽
发表于 2021-10-28 09:45:42
{0;0;0;0;0;1;0;0;0;0;0;1;0;0;0;0;0;0;1;......}用FREQUENCY用1的筛子去过滤结果为{0;0;0;0;0;1;0;0;0;0;0;0;0;0;0;0;0;0;0;......}这有啥不一样?用了FREQUENCY纯粹去三键,这是个多余的步骤,MATCH找的就是第一个1的位置。
桔梗少女
发表于 2021-10-29 20:17:43
=VLOOKUP(L7,OFFSET(A1:G1,MATCH(L5,A:A,)-1,,MATCH(1,FREQUENCY(1,N(OFFSET(A1,MATCH(L5,A:A,)-1,,99)="")),)),7,)
坑坑坑的格式
古月轩
发表于 2021-10-30 10:07:41
=INDEX(OFFSET(G23,MATCH(L5,A1:A23,0)-ROW(A23),,-IFERROR(MATCH(L5-1,IF(ISNUMBER(A1:A23),A1:A23,""),1),-3)+MATCH(L5,IF(ISNUMBER(A1:A23),A1:A23,""),0)),MATCH(L7,OFFSET(A23,MATCH(L5,A1:A23,0)-ROW(A23),,-IFERROR(MATCH(L5-1,IF(ISNUMBER(A1:A23),A1:A23,""),1),-3)+MATCH(L5,IF(ISNUMBER(A1:A23),A1:A23,""),0)),0))
数组公式
思路决定成败啊,向楼上学习,太强大了。
事事如意练晓波
发表于 2021-11-1 02:04:26
大佬真是太厉害了!
我看不懂,望大佬能教我
可行
发表于 2021-11-5 06:53:45
大国石匠大佬的公式精妙在用offset来创建了动态的数据表,让vlookup通过条件来查找到你想要的数据。首先你要先了解offset函数,然后再读懂MATCH(1,FREQUENCY(1,N(OFFSET(A1,MATCH(L5,A:A,)-1,,99)="")),)这部份,你就明白了
莎莉
发表于 2021-11-6 02:18:11
MATCH(1,FREQUENCY(1,N(OFFSET(A1,MATCH(L5,A:A,)-1,,99)="")),)
现在就这一段公式看不懂
戊马
发表于 2021-11-6 04:03:04
MATCH(1,FREQUENCY(1,N(OFFSET(A1,MATCH(L5,A:A,)-1,,99)="")),)
现在就是这条公式看不懂
史海明
发表于 2021-11-14 10:03:00
1.大方向思路是VLOOKUP,只是这里的格式造成VLOOKUP的区域不是简单的选一下,必须去算出来;
2.MATCH(1,FREQUENCY(1,N(OFFSET(A1,MATCH(L5,A:A,)-1,,99)="")),)就是取得VLOOKUP的查找区域是有几行,个人习惯多套了层FREQUENCY只是为了不喜欢数组的三键结束。正常取得的套路是=MATCH(1=1,OFFSET(A1,MATCH(L5,A:A,)-1,,99)="",)
黄迎涛
发表于 2021-11-15 06:51:51
=VLOOKUP(L7,OFFSET(A1:G1,MATCH(L5,A:A,)-1,,MATCH(1,FREQUENCY(1,N(OFFSET(A1,MATCH(L5,A:A,)-1,,99)="")),)),7,)
坑坑坑的格式