請問VBA中呼叫Function的問題?

2016-08-12 5:21 pm
我在VBA中寫了簡單的測試遞迴程式,出現了錯誤訊息
想請問是哪邊有誤呢?請指教

Dim count As Integer

Sub 測試遞迴()

count = 1
測試 (count)

End Sub

Function 測試()

If count <= 5 Then

Cells(5, count) = count
count = count + 1
測試 (count) <========錯誤顯示在這行上面

End If

End Function
更新1:

請問VBA有需要定義回傳值資料型態嗎? 例如像C++的函數就需要,如: void sub (void) 又或者 int sub(char a)

回答 (1)

2016-08-12 6:51 pm
✔ 最佳答案
Function 測試()

應該更正為 :

Function 測試(count)

-------------------------------------------------------

Q: VBA有需要定義回傳值資料型態嗎?
Ans:
VBA 關於 "變數資料型態" , "回傳值資料型態" 等的定義比較有彈性,
可定義, 也可不定義(不定義時, 程式會自己找適當的資料型態)
因此,
Function 測試(count)
可改成 :
Function 測試(count As Integer)

雖然資料量少時, 變數資料型態定義與不定義差別不大;
但資料量巨大時, 定義最適當的資料型態有助於提升執行效率.


收錄日期: 2021-05-02 14:10:44
原文連結 [永久失效]:
https://hk.answers.yahoo.com/question/index?qid=20160812092120AAaXI8s

檢視 Wayback Machine 備份