2017-07-30 163 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

謝謝您的澄清! :-) –