-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) –