我想构建一个可以完整填写以下内容的公式:
1)它做了一个VLookup。如果VLookup返回值,则将值分配给单元格。 2)否则,保持单元格的当前值。
这甚至可能吗?默认情况下,Excel公式不允许引用当前单元格。谢谢!
答案 0 :(得分:1)
使用"帮助"细胞
放置"默认值"在一个单独的单元格中,例如 Z100 。然后在 A1 之类的内容:
=IFERROR(VLOOKUP(B1,C1:D8,2,FALSE),Z100)
因此,如果 VLOOKUP()有效,您将获得结果;否则为默认值。
修改#1:强>
拿一个典型的细胞,说 A1 。单元格的当前值将是以下三种情况之一:
我们的建议是用三种公式之一替换细胞的内容:
=IFERROR(VLOOKUP(B1,C1:D8,2,FALSE),"")
=IFERROR(VLOOKUP(B1,C1:D8,2,FALSE),"Hello World")
=IFERROR(VLOOKUP(B1,C1:D8,2,FALSE),B56+2)
如果您已经需要修改数百个单元格,请使用VBA宏执行编辑。
答案 1 :(得分:1)
有几种方法可以访问单元格中的上一个值:但它们都不是理想的。 看到 https://fastexcel.wordpress.com/2012/01/08/writing-efficient-vba-udfs-part-8-getting-the-previously-calculated-value-from-the-calling-cells/
答案 2 :(得分:-1)
似乎只需要循环引用。将您的VLOOKUP包装在IFERROR中,默认为单元格。