2

我需要费用表方面的帮助。我没有太多Excel经验,但我会尽力描述。

A 列列出了我们所有 50 种产品的名称。

B 列列出了所有 50 种产品的数字产品代码。

C 列列出了我们 50 种产品中每种产品的项目时间。在填写产品的单个成本表之前,该字段必须为空白,然后将其总成本填充在下面的 D 列中,并且查找功能会使用项目时间(在查找表中列出)填充 c 列。

D 列列出了我们 50 种产品中每种产品的单独成本。此字段显示为空白,但页面参考单个成本表上的总成本。完成单个成本表并在 D 列中显示总成本后,查找功能会在 C 列中填充项目工时。

示例:A1 小部件(产品名称)

B1 800(数字产品代码)

C1 400(项目工时 - 直到成本出现在 D1 中然后查找才显示)

D1 1500 美元(在成本输入单个成本表之前显示为空白。但它并不是真正的空白 - 公式行显示了对 Widget 成本表的引用,Widget 总成本的单元格编号 (L51) 如下:

’Widgets’!L51  

== 我在成本表的单元格 B1 中尝试了以下公式,但它仅在我删除 D1 中的页面引用时才有效。

=IF(ISBLANK(D1),"",VLOOKUP(B1,'Project Hrs Lookup'!A4:C23,3,FALSE))

我应该在 ISBLANK 旁边使用一些东西,因为单元格 D1 有一个页面引用并且不是真正的空白吗?

4

1 回答 1

1

试试下面的公式:

  • 对于D1单元格:=IF(’Widgets’!L51="","",’Widgets’!L51)- 仅在填写’Widgets’!L51单元格时才会显示成本。
  • 对于C1单元格(我想您B1在请求中拼写错误):而不是您的初始公式使用=IF(D1="","",VLOOKUP(B1,'Project Hrs Lookup'!$A$4:$C$23,3,FALSE))
    • 我替换ISBLANK(D1)D1=""- 不同之处在于只有在单元格真正ISBLANK为空白的情况下才会返回 TRUE ,即什么都没有。我的解决方案检查单元格中的空字符串- 这就是区别(请参阅上面的公式)。D1
    • 我还将 VLOOKUP 表引用从您的 relative:'Project Hrs Lookup'!A4:C23更改为 absolute: 'Project Hrs Lookup'!$A$4:$C$23- 如果您决定将您的 furmula 复制到其他地方(我几乎可以肯定您会这样做)- 引用将保持原样(我面临着非常很久以前我自己的同一个问题数百万次(:)。作为这里的另一个解决方案 - 为您的参考表定义命名范围并在您的公式中使用它:如果您需要更改它 - 您将在一个地方执行此操作,其余的都将按预期工作。

祝您的解决方案好运!

于 2013-01-12T13:29:27.667 回答