如何对 VBA 中的虚数求平方?

How to square an imaginary number in VBA?

我在 VBA 中处理虚数,我试图实现的部分数学涉及虚数平方。现在,我试图在立即数 window 中计算复数的平方,但出现“类型不匹配 运行-time 13”错误。这是下面的代码。

? WorksheetFunction.Complex(k1, -1*rho*sigma*phi)
? (WorksheetFunction.Complex(k1, -1*rho*sigma*phi))^2 

第二行出现错误,我不确定如何在 VBA 中对这个复数求平方。也尝试在线查看,但无法找到任何有用的信息。

使用 ImProduct 工作表函数。

您可以使用 ImProductImPower 工作表函数。

Sub WorkingWithComplexNumbers()
  Dim vNum As Variant
  Dim wf As WorksheetFunction
  Set wf = WorksheetFunction
  
  vNum = wf.Complex(2, 3)
  
  Debug.Print wf.ImProduct(vNum, vNum)
  Debug.Print wf.ImPower(vNum, 2)
End Sub

如果您键入 WorksheetFunction.im,您将获得一个列表,其中包含您可以在复数上使用的所有函数。