【问题标题】:Input Value on another table only when necessary仅在必要时在另一个表上输入值
【发布时间】:2020-12-27 23:16:56
【问题描述】:

我还有另一个 Excel 问题。下订单时,我需要什么功能只显示交货时间?对于此示例,第三个提前期 RN“0.19”将显示在第一个表的第 7 周。你能再帮我一次吗。非常感谢。

到目前为止,我在第一个表上的 Lead Time 列的公式是:

=IF(I9=6,Q20,"")

但话又说回来,我只想在下订单的几周内显示下一个提前期 RN。

Table 1 picture

Table 2 (Lead Time Table) picture

Whole Table 1 (Simulation Table)

【问题讨论】:

    标签: excel reference lookup


    【解决方案1】:

    我建议你试试这个公式。

    =IF($I9=6,VLOOKUP(COUNTIF($I$8:$I9,6),$P$20:$Q35,2,FALSE),"")
    

    在这里,P20:Q29 是您的提前期表的范围。它可以在另一张纸上,我会将其设为命名范围。 “2”表示它是指定范围的第二列中的值。第 1 列必须有查找列表。

    只有在 I9 中有 6 时才会查​​询提前期。否则它将返回“”。但是,我建议改为返回 0,然后在不受欢迎的情况下格式化单元格以隐藏零。这是因为 0 是一个数字,您可以在可能跟随的乘法中使用它,产生 0 的生产时间。另一方面,“”是一个文本字符串,您需要在处理的公式中将其转换为 0它,这不是很优雅,因为需要下一个公式来纠正第一个公式的错误。

    【讨论】:

    • 我尝试了您的公式,但所有提前期都是 0.42,因为查找值是 I 列并且所有内容都是“6”。我想我们快到了。
    • 我认为我列中的值是指定提前期表中的行。如果不是,您如何以及在何处指定该行?
    • 订单数量为常数,为“6”。因此,第 I 列仅表示该周是否已下订单。此外,P 列并不表示周数,而是表示使用特定提前期的顺序。下一个订单是第 7 周。这是第三次使用潜在客户。因此,第三个提前期 (0.19) 应该是第 7 周的提前期。我希望我没有那么混乱。但是感谢你们所有小时的帮助
    • 有没有办法从你的桌子上知道下一次是第三次?第11次的交货时间是多少?
    • 嗨,@Variatus。从主表知道这将是第三次的唯一方法是已经下订单(在该特定周的订单数量为“6”)。实际上有 20 周,当我手动输入订单时,只有 8 周必须下订单。因此,在给定的 10 个交付周期中,将仅使用 8 个交付周期。注意:20 个需求 RN 和 10 个提前期 RN 从问题中给出。谢谢,非常感谢您的帮助。
    【解决方案2】:

    试试:IF($I9>0,XLOOKUP($B9,$P$20:$P$29,$Q$20:$Q$29,"NO MATCH"),"")

    根据评论编辑:

    试试:IF($I$9>0,XLOOKUP(COUNTIF($I$9:$I$18,">0")-COUNTIF($I9:$I$18,">0")+1,$P $20:$P$29,$Q$20:$Q$29,"不匹配"),"")

    【讨论】:

    • 很抱歉,交货时间表可能会造成混淆。 P 列不是指周数,而是使用特定提前期的顺序。下一个订单是第 7 周。这是第三次使用潜在客户。因此,第三个提前期 (0.19) 应该是第 7 周的提前期。我希望我没有那么混乱。但是感谢你们所有小时的帮助
    • 感谢新功能。下班后我会试试的。
    • 你试过我的公式了吗,正如你所说的那样?
    • 我做了一些调整以反映整个工作表。它也有效: =IF($I9>0,XLOOKUP(COUNTIF($I$9:$I$28,">0")-COUNTIF($I9:$I$28,">0")+1,$P$20 :$P$29,$Q$20:$Q$29,"不匹配"),"")
    • 好的。由于我的答案有效并且在您选择的答案前几个小时提交,您至少可以给我一个支持吗?将不胜感激。
    猜你喜欢
    • 2013-09-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多