Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Excel 按组查找最近交易的人_Excel_Excel Formula - Fatal编程技术网

Excel 按组查找最近交易的人

Excel 按组查找最近交易的人,excel,excel-formula,Excel,Excel Formula,我有一个表,列出了与每个组进行交易的组(交易员=人) 我想按组查找进行最新交易的人。因此,理想情况下,该表如下所示: Group, Person, Date Group A, Person 1, 2021-03-04 Group B, Person 1, 2021-02-03 我遇到过各种Excel公式(例如索引(range1,MATCH(MAX(range2),range2,0))和{=INDEX(range1,MATCH(1,(A1=range2)(B1=range3)(C1=range4

我有一个表,列出了与每个组进行交易的组(交易员=人)

我想按组查找进行最新交易的人。因此,理想情况下,该表如下所示:

Group, Person, Date
Group A, Person 1, 2021-03-04
Group B, Person 1, 2021-02-03

我遇到过各种Excel公式(例如索引(range1,MATCH(MAX(range2),range2,0))和{=INDEX(range1,MATCH(1,(A1=range2)(B1=range3)(C1=range4),0))),但我找不到一种方法或方法将这两个公式组合在一起并创建我需要的内容。

如果有Microsoft365:

E2
中的公式:

=FILTER(A2:C7,C2:C7=MAXIFS(C2:C7,A2:A7,A2:A7))

如果有Microsoft365:

E2
中的公式:

=FILTER(A2:C7,C2:C7=MAXIFS(C2:C7,A2:A7,A2:A7))

没有O365,你可以

  • 在中创建组列表,例如
    H24:Hnn
  • 请注意,我插入了一个,并使用结构化引用。但如果必须的话,可以使用常规地址。由于各种原因,我发现表格更易于使用和维护
并按要求填写


使用Power Query(在Windows Excel 2010+和O365中提供)也可以相当轻松地做到这一点。

如果没有O365,您可以

  • 在中创建组列表,例如
    H24:Hnn
  • 请注意,我插入了一个,并使用结构化引用。但如果必须的话,可以使用常规地址。由于各种原因,我发现表格更易于使用和维护
并按要求填写


使用Power Query(在Windows Excel 2010+和O365中提供)也可以非常轻松地执行此操作。

只需创建一个数据透视表、字段
人员
到行部分。字段<代码>日期进入值部分。确保
Date
字段设置为值和日期的总和格式

然后根据字段
人员
中的前10名进行筛选,并根据字段
日期总和
选择1而不是10

这将自动筛选表格,以显示每组中日期最高(最高=最新)的人员


很抱歉质量问题,必须压缩才能上载到SO

只需创建一个数据透视表,将字段
个人
放入行部分。字段<代码>日期进入值部分。确保
Date
字段设置为值和日期的总和格式

然后根据字段
人员
中的前10名进行筛选,并根据字段
日期总和
选择1而不是10

这将自动筛选表格,以显示每组中日期最高(最高=最新)的人员


很抱歉质量问题,必须压缩才能上传到如此整洁的位置-但是*(A2:A7=A2:A7)做什么?这不是一直都是真的吗?@TomSharpe,你是对的,可以忽略它=)很酷!但是如果我没有365呢?haha@JamesR. 当你可以使用一个helper列并对你的数据使用一个合适的过滤器时,总是有一个合理的简单解决方案。整洁-但是*(A2:A7=A2:A7)做什么呢?这不是一直都是真的吗?@TomSharpe,你是对的,可以忽略它=)很酷!但是如果我没有365呢?haha@JamesR. 当您可以使用helper列并对数据使用适当的过滤器时,总会有一个合理的简单解决方案。
    Person: I24: =INDEX(IF((MAX(IF(tblTrades[Group]=H24,tblTrades[Date]))=tblTrades[Date])*(H24=tblTrades[Group]),tblTrades[Person],""),1)
    Date:   J24: =MAX(IF(H24=tblTrades[Group],tblTrades[Date]))