我有两个职能。用户在Excel中调用第一个函数(FunctOne
),然后选择一系列输入来执行某些操作。第二个函数(FunctTwo
)使用此部分输出,并执行更多操作。我想显示FunctTwo
的输出。
我的问题是:如何显示FunctTwo
的结果?我需要创建第三个功能吗?如果是,它看起来如何?
非常感谢
Function FunctOne(var1, var2 As Range)
Do something 'perform some calculations using inputs
End Function
===========
Function FunctTwo(FunctOne As Variant) As Variant
Do something 'use the output of FunctOne and do something
End Function
PD:我试图仅用一个函数来完成所有操作,但是循环没有按我预期的那样工作。因此,也许如果我使用两个功能更改方法可能会起作用。任何帮助将不胜感激。
答案 0 :(得分:0)
如果要建立必须按特定顺序执行的计算序列,则需要创建一个驱动计算的子例程。
Public Sub MyCalculations()
Dim var1 as Range, var2 as Range
var1 = ...
var2 = ...
Dim f1 as Variant
f1 = FunctOne(var1, var2)
Dim f2 as Variant
f2 = FunctTwo(f1)
End Sub
以上假设FunctOne
和FunctTwo
不会更改工作表(不是副作用的假设)。最佳做法是声明参数ByVal
这样函数就不能更改上面使用的任何局部变量。