-2
我是編程概念中的新手。我知道只有一件事是在VBA中,一個函數返回一個值,但是一個Sub不會。我有Sub過程和兩個返回值的兩個示例,其在下面給出:關於子程序中的「返回值」概念的困惑
例1:當我進入A1和A2細胞值,那麼它在A3返回值。
Sub Addition()
a = ActiveSheet.Range("A1").Value
b = ActiveSheet.Range("A2").Value
ActiveSheet.Range("A3").Value = a + b
End Sub
例2:它也還給我立方根值後輸入任何正數:
Sub CubeRoot()
Num = InputBox("Enter a positive number")
MsgBox Num^(1/3) & "is the cube root."
End Sub
然後兩者(功能和次)如何彼此不同。請糾正我?
首先,它們都不會「返回」任何東西。第一次寫入輸出('ActiveSheet'),第二次顯示用戶界面。 – Comintern
子永不返回任何東西,只有功能做到這一點:http://www.excel-easy.com/vba/examples/volatile-functions.html 你可以 – R3uK
@Comintern,當我在單元格A1 = 3和單元格中輸入值A2 = 2,那麼它在單元格A3中返回值5。在例2中,當我在inputbox中輸入任何值時,它返回值(cuberoot) –