我目前正在使用Index,Match来匹配从一张到另一张的记录。工作得很好,除非我有多个具有相同标识符的记录。让我解释一下:
名为Open Leave Report的工作表包含原始数据(查找值),而名为Open Leave Capture的工作表包含已清理的数据。所以我的公式看起来像这样
=INDEX('Open Leave Report'!O:O,MATCH('Open Leave Capture'!C9,'Open Leave Report'!B:B,0))
效果很好,除非我有以下内容:
Column B Column O
Employee ID Continuous or Intermittent
1646484 Intermittent
1646484 Continuous
因此,当我在Open Leave Capture中键入Employee ID时,它总是会返回第一行,但它会忽略第二条记录。它看起来像这样:
Employee ID Type
1646484 Intermittent
1646484 Intermittent
有什么方法可以格式化我的索引/匹配公式以恢复两个记录?
我希望我能解释清楚
答案 0 :(得分:1)
不要使用INDEX和MATCH ...而是使用数据透视表。
每当我希望列表中的某些记录出现在不同的位置时,我将源数据转换为Excel表格,然后从中创建数据透视表,然后过滤该数据透视表以显示项目I'我很感兴趣。
没有公式,只要刷新数据透视表,它就会自动获取源数据的任何更改。与公式不同,公式可能非常复杂,需要分开,并依赖于您记住将公式拖到页面上以确保捕获任何新数据。
答案 1 :(得分:0)
如果将源数据转换为表格,解决方案会简单得多。选择源数据,然后使用Insert>表
此解决方案具有以下假设:
这是放入单元格B2的公式。这是一个数组公式。您需要双击单元格,粘贴公式,然后按CTRL
+ SHIFT
+ ENTER
保存。然后,您可以根据需要填写它。
=IFERROR(INDEX(Table1[Type],SMALL(IF(Table1[Employee ID]=A2,ROW(Table1[Employee ID])-ROW(Table1[[#Headers],[Employee ID]])),COUNTIF($A$2:A2,A2))),"Not that many")