徐志武 发表于 2021-9-22 11:50:00

菜鸟求助:不同的日期,提取数据


求大神帮我

在不同的日期,提取数据

自己的世界 发表于 2021-9-23 15:39:50

=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-9-25 09:21:18

=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-10-7 07:41:54

大佬真是太厉害了!
我看不懂,望大佬能教我

桂冠诗人 发表于 2021-10-12 17:00:39

大国石匠大佬的公式精妙在用offset来创建了动态的数据表,让vlookup通过条件来查找到你想要的数据。首先你要先了解offset函数,然后再读懂MATCH(1,FREQUENCY(1,N(OFFSET(A1,MATCH(L5,A:A,)-1,,99)="")),)这部份,你就明白了

征林 发表于 2021-10-13 22:33:34

MATCH(1,FREQUENCY(1,N(OFFSET(A1,MATCH(L5,A:A,)-1,,99)="")),)
现在就这一段公式看不懂

奥妮克希亚 发表于 2021-10-17 06:10:46

MATCH(1,FREQUENCY(1,N(OFFSET(A1,MATCH(L5,A:A,)-1,,99)="")),)
现在就是这条公式看不懂

啊牛哥 发表于 2021-10-17 11:18:20

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-10-23 01:21:56

=INDIRECT(TEXT(SMALL((IF(($A$1:$A$23=$L7)*(ROW($A$1:$A$23)>MATCH($L$5,A:A,0)),ROW($A$1:$A$23),9^9)),1)*100+MATCH($M$6,$A$2:$G$2,0),"R0C00"),)
请用数组公式CTRL+SHIFT+ENTER
我用另外一种方法解决这个问题 供参考
思路大概是这个样子就是通过计算行列数来把数据定位呈现出来
1. 用日期定位到行数 (起点行数比较简单 用一个Match即可)
2. 找到终点行数 这个比较困难 后来决定使用数据来判断 用用户数据去定位 找到大于七点行数的最小行数
3. 找到客户收益的列数
4. 通过INDIRECT+TEXT函数来把数据呈现出来

欢乐的花园 发表于 2021-10-24 06:16:56

感谢大佬的答复
页: [1] 2 3
查看完整版本: 菜鸟求助:不同的日期,提取数据