Excel formula 具有多个条件的Excel索引和匹配函数不搜索下一条记录

Excel formula 具有多个条件的Excel索引和匹配函数不搜索下一条记录,excel-formula,excel-2010,Excel Formula,Excel 2010,我有一个电子表格,我需要根据多个搜索条件查找数据。我使用了带有匹配功能的索引来查找电子表格中的第一条记录,但是我无法找到数据集中的下一条记录 文件名为“安全统计”,数据位于[职业伤害]选项卡中。我需要查找上个月的所有记录,“员工/承包商”列为“员工”,“受伤类型”列不是“急救”或“仅报告”。你可以在这里看到: 我的功能是定位第一个事件,但我无法在数据集中找到下一条记录。我们将非常感谢您的帮助 这是我写的函数 {=IF( ISNA( INDEX( '

我有一个电子表格,我需要根据多个搜索条件查找数据。我使用了带有匹配功能的索引来查找电子表格中的第一条记录,但是我无法找到数据集中的下一条记录

文件名为“安全统计”,数据位于[职业伤害]选项卡中。我需要查找上个月的所有记录,“员工/承包商”列为“员工”,“受伤类型”列不是“急救”或“仅报告”。你可以在这里看到:

我的功能是定位第一个事件,但我无法在数据集中找到下一条记录。我们将非常感谢您的帮助

这是我写的函数

{=IF(
    ISNA(
        INDEX(
            '[Safety Stats.xlsx]Occupational Injuries'!$C$5:$C$128,
            MATCH(1,
                ('[Safety Stats.xlsx]Occupational Injuries'!$A$5:$A$128=TEXT(EOMONTH(TODAY(),-1),"MMMM")) * 
                ('[Safety Stats.xlsx]Occupational Injuries'!$F$5:$F$128="Employee") * 
                ('[Safety Stats.xlsx]Occupational Injuries'!$I$5:$I$128<>"First Aid") * 
                ('[Safety Stats.xlsx]Occupational Injuries'!$I$5:$I$128<>"Reported Only"),0))),"",
                INDEX('[Safety Stats.xlsx]Occupational Injuries'!$C$5:$C$128,
                    MATCH(1,
                    ('[Safety Stats.xlsx]Occupational Injuries'!$A$5:$A$128=$Y$9) * 
                    ('[Safety Stats.xlsx]Occupational Injuries'!$F$5:$F$128="Employee") * 
                    ('[Safety Stats.xlsx]Occupational Injuries'!$I$5:$I$128<>"First Aid") * 
                    ('[Safety Stats.xlsx]Occupational Injuries'!$I$5:$I$128<>"Reported Only"),0
                )
            )
    )
}
{=IF(
伊斯纳(
索引(
“[Safety Stats.xlsx]职业伤害”!$C$5:$C$128,
匹配(1,
(“[Safety Stats.xlsx]职业伤害”!$A$5:$A$128=文本(EOMONTH(TODAY(),-1),“MMMM”)*
(“[Safety Stats.xlsx]职业伤害”!$F$5:$F$128=“员工”)*
(“[Safety Stats.xlsx]职业伤害”!$I$5:$I$128“急救”)*
(“[Safety Stats.xlsx]职业伤害”!$I$5:$I$128“仅报告”),0)),“”,
指数(“[Safety Stats.xlsx]职业伤害”!$C$5:$C$128,
匹配(1,
(“[Safety Stats.xlsx]职业伤害”!$A$5:$A$128=$Y$9)*
(“[Safety Stats.xlsx]职业伤害”!$F$5:$F$128=“员工”)*
(“[Safety Stats.xlsx]职业伤害”!$I$5:$I$128“急救”)*
(“[Safety Stats.xlsx]职业伤害”!$I$5:$I$128“仅报告”),0
)
)
)
}

如果您想要一个符合条件的所有记录的列表,那么使用查找公式就不会有什么进展。您可能需要考虑筛选数据源的另一种方法。

可以在“数据”功能区中启用“自动筛选”,然后在列标题中选择值

如果要复制筛选结果,可能需要查看高级筛选。您可以在电子表格单元格中定义筛选条件,然后运行高级筛选并将结果复制到其他工作表

编辑:公式方法不适用。你需要一种不同的方法。考虑具有原始数据的过滤器和/或切片器的数据透视表。添加新数据时,刷新数据透视表


或者,使用Microsoft for Excel 2010提供的免费外接程序Power Query。您可以使用所有筛选器定义一次查询,然后在数据源发生更改时刷新查询。

您想实现什么?是否按这些条件筛选列表?然后可能使用过滤器而不是查找公式。我希望excel每月根据我的标准将数据从该电子表格拉入不同的excel报告中。我在另一份报告中使用了这个公式。我希望excel每月根据我的标准将数据从该电子表格拉入不同的excel报告中。我在另一份报告中使用了这个公式。我在回答中添加了一些建议。