首页 > 解决方案 > 如何在VBA中对一个虚数求平方?

问题描述

我正在使用 VBA 中的虚数,并且我试图实现的部分数学涉及虚数平方。现在我尝试在即时窗口中对复数求平方,但出现“类型不匹配运行时 13”错误。这是下面的代码。

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

第二行是我遇到错误的地方,我不确定如何在 VBA 中对这个复数求平方。也尝试在网上查找,但找不到任何有用的东西。

标签: excelvbacomplex-numbers

解决方案


您可以使用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,您将获得可用于复数的所有函数的列表。


推荐阅读