首页 > 解决方案 > 使用函数获取变量的值(将变量从函数传递到子程序)

问题描述

我在 Windows 机器上的 Excel (Office 365) 中使用 VBA。(我已经发现几乎所有主要的 VBA 功能都不能在 Mac 上运行)。

首先,我向所有说“这个问题已经被问过”的人道歉。也许是这样,但我刚刚在这里呆了一个多小时,找不到答案。

我发现了如何将变量的价值传递给函数,但我不能以另一种方式,从函数返回子程序。

有一些类似的问题,但答案中的代码远远超出了我的绝对初学者水平,我无法弄清楚。我已经尝试了很多东西,比如使用“Option Explicit”、“Dim”、“Public”和“Private”,但我就是无法让这段代码工作。

所以这里是代码。请问有人可以为我正确地重写它吗?

Sub GetTheValueOfXXX()

      getXXX
      MsgBox XXX
End Sub

Function getXXX()

      XXX = 999
End Function

感谢那些可怜我这个完全新手的人,并向那些认为这就像加1加1的人道歉。

标签: excelvbafunctionvariables

解决方案


Sub GetTheValueOfXXX()
    Dim x
    x = getXXX()
    Msgbox x
End Sub

Function getXXX()
    getXXX = 999   '<< return a value using the function's name...
End Function

大批:

Sub GetTheValueOfXXX()
    Dim x
    x = getXXX()
    Msgbox x(0)   '>> 999
    Msgbox x(1)   '>> 88
End Sub

Function getXXX()
    getXXX = Array(999, 88, 7) 
End Function

推荐阅读