巴黎浪漫兵人 发表于 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,)

坑坑坑的格式
页: 1 [2] 3
查看完整版本: 菜鸟求助:不同的日期,提取数据