【问题标题】:Lookup Acct. Balance on specified day in Google Sheets查找帐户。 Google表格中特定日期的余额
【发布时间】:2020-06-01 11:37:36
【问题描述】:

听起来很简单!我有一张名为“Account”的表格,其中包含“G”列中的流动余额,我有另一张名为“Performance”的表格,其中列出了历史日期和列“D”需要在所述日期查找帐户余额在“A”列。

“帐户”表

“绩效”表

例如,Performance!D2 应该是“210,000.00”。
性能!D7 应该是“110,000.00”。
性能!D9 将是“40,000.00”。

为了使这稍微困难一些,我喜欢尽可能将公式作为数组公式放入标题行,以避免在复制和粘贴数据或添加新行等时出现问题。

我尝试了许多不同的可能性,但都没有奏效。我目前正在尝试使用 Performance!D1 中的以下公式。

=ARRAYFORMULA(if(row(D1:D) = 1, "Cash", VLOOKUP(A1:A, MIN('Balance'!A4:A <= A1:A), 7, 1)))

我也尝试了一些涉及 MATCH()、FILTER()、VLOOKUP() 和 LOOKUP() 的解决方案,但目前还没有 cookie!

【问题讨论】:

    标签: google-sheets google-sheets-formula array-formulas gs-vlookup


    【解决方案1】:

    这应该可行:

    =ARRAYFORMULA({"Cash";if(A2:A="",,VLOOKUP(A2:A, SORT('Account'!A4:G),7,TRUE))})
    

    VLOOKUP(...,true) 返回与第一列中最接近的匹配项关联的值,而无需遍历。前提是您进行 vlookup 的范围按该范围的第一列排序。

    【讨论】:

    • 太棒了!我花了整个下午试图得到它。完美运行。该列始终按第一列排序,因为新记录始终按顺序添加。
    • 很高兴它成功了。如果该范围总是被排序,那么从技术上讲,您可以摆脱我在那里的 SORT() 。此外,由于 TRUE 是默认值,您也可以摆脱它,只留下一个简单的.... =ARRAYFORMULA({"Cash";if(A2:A="",,VLOOKUP(A2:A,'Account' !A4:G,7))})
    • 知道了。谢谢。
    猜你喜欢
    • 1970-01-01
    • 2022-11-15
    • 2023-03-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多