2017-07-30 168 views
1

我对VBA很新。如果我的问题很简单,我很抱歉。我有个问题。当我运行下面的代码,我得到了以下错误消息:VBA错误:检测到模糊名称(Excel 2010)

编译器错误:检测明确名称:发轫

任何人都可以请解释一下我的代码部分是错误的?

Option Explicit 

Dim n As Double 
Private faren As Integer 
Dim result As Double 

Function faren(n) 
faren = (9/5) * (n + 32) 
End Function 

Function c(n) 
Dim c As Long 
c = (5/9) * (n - 32) 
End Function 

Sub test() 
result = faren(32) 
MsgBox "the degree in farenheit is " & result & "Farenheit." 
End Sub 

回答

3

您声明faren两次。第一个Private faren As Integer和第二个Function faren(n)

为避免你可以删除Private faren As Integer和修改功能线这样的模糊名称:Function faren(n) As Integer

编辑:我不知道,如果你声明发轫有意为Integer,而不是Double,但我希望你能看到以下结果比较差:

Function faren(n) As Integer使用n = 32 --> result = 115

0时n = 32 --> result = 115.2

您可能想要考虑以同样的方式声明c as double,因为它也会影响结果。

+0

谢谢您的澄清! :-) –