VBA - 如何获得公式的结果? (。值总是返回0)

时间:2015-03-03 12:40:02

标签: excel vba excel-vba excel-formula evaluate

我想得到一个包含在单元格中的公式的结果,但我总是得到0,而不是实际的结果。

我有以下内容:

Set c = .Cells (5,5)

MsgBox (c.Formula) ' this return the following: = ASIN (W22-V22/$D$7)*180/PI() 
MsgBox (c.Value) ' this returns 0
MsgBox (c.Value2) ' this returns 0 as well

即使我尝试使用Evaluate:

evaluation = Application.Evaluate (c.Formula) 
MsgBox (c.Value) ' it still returns 0

2 个答案:

答案 0 :(得分:1)

如果 V22 W22 都为零,则零是正确答案。

答案 1 :(得分:0)

也许试试这个:

Sub formVal()

Dim c As Range

Set c = ThisWorkbook.Sheets(1).Cells(5, 5)

MsgBox (c.Formula) 
MsgBox (c.Value)
MsgBox (c.Value2)



End Sub