【问题标题】:I need vlookup formula to extract data from 3 excel sheets我需要 vlookup 公式从 3 个 excel 表中提取数据
【发布时间】:2021-06-05 18:41:54
【问题描述】:

我有一个 excel 用例。我有三个不同的 Excel 表,即raw datareferencereport,如下所示。报告表包含每个人的总费用(需要计算),参考表包含每个人的费用类别,原始数据表包含费用名称和费用值。我需要使用VLOOKUP 或任何其他公式找到每个人的总费用(报告表中的 B 列)。

我需要一个公式来使用三张纸找到每个人的总费用。我知道在 excel 中加入和导入数据。但是,我希望它只用公式来实现。

原始数据

参考表

报告

【问题讨论】:

    标签: excel vba excel-formula ms-office vlookup


    【解决方案1】:

    您可以在原始数据表上创建 C 列,方法是使用 INDEX + MATCH 函数从参考表的 A 列中获取名称;

    =INDEX($A$2:$A$13,MATCH(A1,$B$2:$B$13,0),0)
    

    在本论坛中,$A$2:$A$13 和 $B$2:$B$13 应从参考数据 excel 中选择,而 A1 应从原始数据 excel 中选择。然后您可以将以下公式插入到您的 Excel 报表中;

    =SUMIFS($C$2:$C$13,$A$3:$A$13,A2)
    

    在这个公式中,$C$2:$C$13 和 $A$3:$A$13 应该来自您的原始数据,而 A2 应该设置为 Excel 报表。

    我希望你很清楚。祝你好运。

    【讨论】:

    • 嗨,@Omur 感谢您的回答。索引功能完美运行。但是,SUMIFS 函数给出的结果不正确,为 0。
    • 嗨@Omur,我刚刚在SUMIFS 函数中用A 和A 替换了C。它工作得很好。但是,是否有任何方法可以在不使用原始数据表中的索引函数的情况下在单个公式中实现?我想做的是,在不触及参考表和原始数据的情况下,我们可以在报告表中使用单个公式吗?或者有什么方法可以在 SUMIFS 函数中包含该索引函数?我想要一个单一的公式来实现这个结果,而不使用原始数据表中的索引函数。请帮忙
    • 嗨,奥穆尔。下面是示例公式 =SUMIFS([rawdata.xlsx]Sheet1!B:B,INDEX([reference.xlsx]Sheet1!A:A,MATCH(A1,[reference.xlsx]Sheet1!B:B,0),0 ),A2)
    【解决方案2】:

    假设你有office 365,以上都可以轻松搞定

    =SUM(SUMIF($A$2:$A$7,FILTER($E$2:$E$7,$D$2:$D$7=G2),$B$2:$B$7))
    

    下面的示例数据

    Sample data

    【讨论】:

    • 。谢谢@rangraj 的回答。我试图实现你的答案。但它给我一个错误,说一个无效的功能。下面是我实现的公式。 =SUM(SUMIF([rawdata.xlsx]Sheet1!A:A,FILTER([reference.xlsx]Sheet1!B:B,[reference.xlsx]Sheet1!A:A=A2),[rawdata.xlsx]Sheet1! B:B))
    • 你用的是哪个版本的excel?
    • 微软办公室 2010
    • 太老了,让我试着做一些与2010兼容的公式
    【解决方案3】:

    试试这个:

    =SUMPRODUCT(IF(A2=RIGHT(Raw_data!A:A,1),Raw_data!B:B,0))
    

    【讨论】:

    • 嗨@罗伯特。我还有一个参考表,显示一个人的费用类别。三张纸相互依赖。没有办法忽略参考表。
    • 嗨@robert 我在帖子中提供的数据只是示例数据。这里部分匹配可以给出结果。但在我的用例中,没有数据相互匹配或完全匹配
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多