2011-06-22 63 views
3

我創建在訪問了Ms的函數,並且它被稱爲在形成子步驟,但它返回0 這是在功能的代碼:函數返回0在Access女士值

Public Function Sum(a, b) As Double 
    Dim total 
    total = a + b 
End Function 

的形式的子過程中的代碼是:

Private Sub cmdDisplay_Click() 
    Dim a As Double 
    Dim b As Double 

    a = Val(Text0) 
    b = Val(Text2) 

    MsgBox (Sum(a, b)) 
End Sub 

其每我測試它應該已經被添加A和b一起按鈕時顯示0。請幫助

+1

只是一般的筆記,你將要指定變量類型(例如昏暗總爲雙);這是一個完全不同的類型(默認爲一個變體)。 – ray

+0

如果亞歷克斯的答案解決了你的問題,你應該接受它作爲答案。 –

回答

5

要返回一個值,您必須將其分配給函數名稱,該函數的名稱就像鍵入函數返回類型的局部變量一樣;

Public Function Sum(a, b) As Double 
    Dim total 
    total = a + b 
    Sum = total '//sum is the function name and a variable of type double 
End Function 

或更好(如果你真的需要一個SUM函數):

Public Function Sum(a as double, b as double) As Double 
    Sum = a + b 
End Function 
+0

感謝傢伙,它的工作.... –

+3

我希望你的真實代碼沒有使用名爲「Sum()」的函數。 –

+0

是的,我從一開始就自己學習。哥們,謝啦... –