Vba 如何使用不同的功能输出功能?

Vba 如何使用不同的功能输出功能?,vba,excel,Vba,Excel,我有一个程序,它给出了许多值,我需要将这些值的最大值和最小值返回到单独的单元格中 我的过程遵循为max和min定义两个不同的函数,执行相同的过程 有更好的方法吗 Function Pmax(P, Mx, My, b, d, b1, d1, ex, ey) P1 = (---------) P2 = (---------) P3 = (---------) P4 = (---------) Pmax = Application.WorksheetFunction.Max(P1, P2, P3, P

我有一个程序,它给出了许多值,我需要将这些值的最大值和最小值返回到单独的单元格中

我的过程遵循为max和min定义两个不同的函数,执行相同的过程

有更好的方法吗

Function Pmax(P, Mx, My, b, d, b1, d1, ex, ey)
P1 = (---------)
P2 = (---------)
P3 = (---------)
P4 = (---------)
Pmax = Application.WorksheetFunction.Max(P1, P2, P3, P4)
End Function
Function Pmin(P, Mx, My, b, d, b1, d1, ex, ey)
P1 = (--------)
P2 = (--------)
P3 = (--------)
P4 = (--------)
Pmin = Application.WorksheetFunction.Min(P1, P2, P3, P4)
End Function
在excel中:选择2个单元格、公式、ctrl+shift+enter


在excel中:选择2个单元格、公式、ctrl+shift+enter

您可以定义一个Pn函数,该函数返回一个p值数组

Function Pn(P, Mx, My, b, d, b1, d1, ex, ey)
    P1 = '(---------)
    P2 = '(---------)
    P3 = '(---------)
    P4 = '(---------)

    Pn = Array(P1, P2, P3, P4)
End Function
然后在
Pmin()
Pmax()函数中使用它

Function Pmax(P, Mx, My, b, d, b1, d1, ex, ey)
    Pmax = Application.WorksheetFunction.Max(Pn(P, Mx, My, b, d, b1, d1, ex, ey))
End Function

Function Pmin(P, Mx, My, b, d, b1, d1, ex, ey)
    Pmin = Application.WorksheetFunction.Min(Pn(P, Mx, My, b, d, b1, d1, ex, ey))
End Function

您可以定义一个Pn函数,该函数返回一个p值数组

Function Pn(P, Mx, My, b, d, b1, d1, ex, ey)
    P1 = '(---------)
    P2 = '(---------)
    P3 = '(---------)
    P4 = '(---------)

    Pn = Array(P1, P2, P3, P4)
End Function
然后在
Pmin()
Pmax()函数中使用它

Function Pmax(P, Mx, My, b, d, b1, d1, ex, ey)
    Pmax = Application.WorksheetFunction.Max(Pn(P, Mx, My, b, d, b1, d1, ex, ey))
End Function

Function Pmin(P, Mx, My, b, d, b1, d1, ex, ey)
    Pmin = Application.WorksheetFunction.Min(Pn(P, Mx, My, b, d, b1, d1, ex, ey))
End Function

回答得好,你能不能也解释一下如何在excel中使用;)两个都完成:-)(本来打算在excel中添加部件以使用它:D)谢谢Pierre,用户3598756都成功了。皮埃尔:我走了,所以看不到答案。再次感谢。@pierre感谢你这帮了我很长时间的问题。回答得好,你能解释一下如何在excel中使用吗;)两个都完成:-)(本来打算在excel中添加部件以使用它:D)谢谢Pierre,用户3598756都成功了。皮埃尔:我走了,所以看不到答案。再次感谢。@pierre谢谢你这个问题帮助了我很长时间。哈哈哈,这也是我的答案。在我编辑之前:D(除了我用byref)@Pierre,你的第一个答案不太正确,因为我修改了它@Pierre,我指的是你实际的第一次编辑,如果你点击
编辑,仍然可以看到。。。ago
在代码下方标记。您有一个
子源函数()
不返回任何内容,只接受
ByRef
并设置参数P1…P4。因此,您必须首先调用
sousfonction
,然后调用
Pmin()
。而我的解决方案直接使用
函数
。不管怎么说,似乎devi对两个答案都毫不在意……事实上,你的版本在这件事上更简单、更好:-)我无意冒犯,我只是笑了笑,因为我们对这个问题的解释是一样的。但事实上,OP似乎并不费心回答,这是粗鲁的。哈哈哈,这也是我的回答。在我编辑之前:D(除了我用byref)@Pierre,你的第一个答案不太正确,因为我修改了它@Pierre,我指的是你实际的第一次编辑,如果你点击
编辑,仍然可以看到。。。ago
在代码下方标记。您有一个
子源函数()
不返回任何内容,只接受
ByRef
并设置参数P1…P4。因此,您必须首先调用
sousfonction
,然后调用
Pmin()
。而我的解决方案直接使用
函数
。不管怎么说,似乎devi对两个答案都毫不在意……事实上,你的版本在这件事上更简单、更好:-)我无意冒犯,我只是笑了笑,因为我们对这个问题的解释是一样的。但事实上,OP似乎并不费心回答这一粗鲁的问题。