如何将数据从一个工作表提取到另一个工作表,其中列包含特定日期?

How do i pull data from one worksheet to another where a column includes a specific date?

提问人:Scott Bond 提问时间:9/30/2023 最后编辑:Mayukh BhattacharyaScott Bond 更新时间:9/30/2023 访问量:42

问:

我正在为 Excel 电子表格而苦苦挣扎,希望有人可以提供帮助。

它有两个工作表,“数据库”和“打印表”

在数据库中,有几列,A:A 包含唯一编号,B:B 包含日期,C:C 包含名称。

Printsheet 有一个单元格,用于在 (A:2) 中输入日期,下面有一个表格。

这个想法是,“打印表”中的表格将自动填充“数据库”中的所有行,这些行包含输入的日期,以便能够打印出来。

我已经尝试了各种方法,在我的 excel 版本中没有可用的“过滤器”公式,网上似乎有很多建议。

到目前为止,我似乎能够从数据库中获取所有值,但它们无法过滤掉其他日期。 谁能帮忙?

它类似于:-

=IFERROR(INDEX(Database!B:B,MATCH(A2),Database!$A:$A,0)),"") 

对于表格的 A 列等,但它似乎不起作用。 任何帮助不胜感激

    =IFERROR(INDEX(Database!A$2:A$200,
  SMALL(IF(Database!B$2:B$200=A2,ROW(Database!A$2:A$200)-ROW(Database!A$2)+1),
  ROWS(Database!A$2:A2))),"")  

这个公式只显示所有唯一数字,而不考虑数据库列中的日期!B:B

数据库

# 旅行日期 位置 名字
1 04/12/2023 查茨沃斯 阿曼达·
2 05/11/2023 纽瓦克 阿曼达·
3 04/12/2023 查茨沃斯 安迪C
4 04/12/2023 查茨沃斯 安迪·
5 04/12/2023 查茨沃斯 安迪·
6 04/12/2023 查茨沃斯 安妮塔·

打印表

04/12/2023
查茨沃斯
# 日期 名字 联系电话 P-up 位置 存款 全额支付
1
2
3
4
excel 公式 自动 填充

评论

0赞 Mayukh Bhattacharya 9/30/2023
请使用 Markdown-Table-Generator 发布一些示例数据,以便我们可以重现您的示例。
0赞 Scott Bond 9/30/2023
我尝试了 markdown,它适用于数据的打印表,但不适用于数据库
1赞 Solar Mike 9/30/2023
也许你应该看看你是如何完成匹配的:“IFERROR(INDEX(Database!B:B,MATCH(A2),Database!$A:$A,0)),“”) “,我建议:”IFERROR(INDEX(Database!B:B,MATCH(A2,Database!$A:$A,0)),“”) “,因为看起来您过早关闭了 match() 函数。
1赞 Scott Bond 9/30/2023
谢谢,我尝试了这个公式,它只是带回了一个空白单元格
1赞 Scott Bond 9/30/2023
=IFERROR(INDEX($A$2:$D$7, AGGREGATE(15,6,(ROW($B$2:$B$7)-ROW($B$2)+1)/($F$1=$B$2:$B$7),ROWS(F$3:F3)), MATCH(F$2,$A$1:$D$1,0)),“”) 这个评论奏效了,非常感谢你的帮助

答:

0赞 Mayukh Bhattacharya 9/30/2023 #1

或者,您也可以尝试使用该函数,而不是AGGREGATE( )SMALL()

enter image description here


• 细胞中使用的配方F3

=IFERROR(INDEX($A$2:$D$7,AGGREGATE(15,6,(ROW($B$2:$B$7)-ROW($B$2)+1)/($F$1=$B$2:$B$7),ROW(A1)),{1,2,4}),"")

根据您的西装更改范围和参考。


或者,通过添加为列索引调用的函数来使其位动态,还将日期更改为旅行日期。MATCH()

enter image description here


• 细胞中使用的配方F3

=IFERROR(INDEX($A$2:$D$7,
  AGGREGATE(15,6,(ROW($B$2:$B$7)-ROW($B$2)+1)/($F$1=$B$2:$B$7),ROWS(F$3:F3)),
  MATCH(F$2,$A$1:$D$1,0)),"")

填满并填满!