首页 > 解决方案 > 强制 Excel 更新计算

问题描述

我的项目有一个导入功能,可以将与此问题没有直接关系的信息填写到我的工作表中。B20 是用户选择的下拉框。=IF(B20<>"",CoFunction(B20),"")C20 具有包含自定义函数的公式,该函数在用户在 B20 中选择某些内容后运行。

我的问题是用户导入此信息后,它会正确填写所有信息,但 C20 中的值不会更新。自定义函数不运行。

我尝试了许多解决方案来计算它,唯一有效的方法是激活工作表,然后将 B20 的值设置为自身。我的问题是,是否有人知道更好的方法来做到这一点。也可以通过在 B20 中选择所需的值来手动完成。

在此处输入图像描述

Function COFunction(range1 As Range)
'Application.Volatile

If InStr(range1, "Panel") Then
COFunction = [VLOOKUP(B20,'Quote Sheet'!B13:C23,2,0) - 'Quote Sheet'!E50]
Exit Function
Else
Address = Replace(range1, Chr(34), Chr(34) & Chr(34)) 'Chr(34) is a double quote (")
COFunction = Evaluate("VLOOKUP(""" & Address & """, 'Prices'!A15:B150,2,0)")
Exit Function
End If
End Function

标签: excel

解决方案


我想到了。我在 vlookup 中的 B20 没有指向特定的工作表。一旦我改变了它,它就可以正常工作。谢谢大家的建议。


推荐阅读