User Defined Array Function
Here's another general idea:
Function Cross(ParamArray v()) As Variant
'// 6 inputs only..
If UBound(v) + 1 < 6 Then
Cross = CVErr(xlErrRef)
Exit Function
End If
Cross = Array( _
v(1)*v(5)-v(2)*v(4), _
v(2)*v(3)-v(0)* v(5), _
v(0)*v(4)-v(1)*v(3))
If TypeName(Application.Caller) = "Range" Then
If Application.Caller.Rows.Count 1 Then
Cross = WorksheetFunction.Transpose(Cross)
End If
End If
End Function
--
Dana DeLouis
<snip
|