我要创建一个计算2分之间距离的曲线,但是当我使用mmult and transpose功能时,我会遇到错误了解为什么
你可以hlp me吗?
Function distancia(RangoA As Range, RangoB As Range) As Long
Dim s() As Variant
Dim t() As Variant
Dim r() As Variant
s = RangoA
t = RangoB
ReDim r(UBound(s), 1)
For i = 1 To UBound(s)
r(i, 1) = s(i, 1) - t(i, 1)
Next i
distancia = Application.MMult(r, Application.Transpose(r))
End Function
请记住,从一个范围创建的数组始终是2D,如果将其转换为2D,则数组仍然是2D。例如。首先是转置后的20x1,是1x20。您应该从数组中通过2D数组传递值,因此;
Application.Transpose(r)(1)