如何编写一个VBA宏,该宏将占用位于单元格A1至C3中的矩阵(对于任意用户指定的功率)的功率?矩阵的功率
矩阵的功率
回答
硬是以你的问题在数学意义上,这个宏通过反复调用Excel的功能MMULT
提高了基质的功率(4中的例子)。
Dim i As Long
Dim pow As Long
Dim vIn As Variant
Dim vOut As Variant
pow = 4 ' or whatever
' Fetch matrix from sheet
vIn = Range("A1:C3")
' Raise to power
vOut = vIn
For i = 1 To pow - 1
vOut = WorksheetFunction.MMult(vOut, vIn)
Next i
' Write result to sheet
Range("E1:G3") = vOut
几年前有一个这样的问题,我记得是因为它被称为矩阵算术,但不像我在学校教过的那样。
填充单元格A1:C3与数字1至9设置单元格A5至2.选择单元A7:C9和键入
=power(A1:C3,A5) ctrl+shift+enter
和细胞A7:C9将被设置为的值的平方在A1:C3。将A5更改为3,将单元格A7:C9设置为A1:C3中值的立方体。
在VBA相对应的是:
Range("a7:c9").FormulaArray = "=Power(a1:c3, a5)"
这并不需要矩阵的力量。它将每个单独的矩阵元素提升为一个幂(在这种情况下为2),但这不是一回事。 –
我同意@ Jean-FrançoisCorbett,这不是矩阵算术,因为我被教过。但是在几年前我看到的问题中,它被用作矩阵算术,我确信我记得术语“矩阵的力量”。我以前没有遇到过ctrl + shift + enter和FormulaArray,所以我花了一些时间来玩这个问题和答案,即使我没有立即使用这些信息。这个问题让我想起了早期的一个,所以我回应了user1061701是在相同的信息之后。 –
我一直在谷歌搜索,发现三年前我看到的问题和答案,虽然他们不像我记得的那样。问题是“你如何将矩阵转换成Excel的权力?”答案是[链接](http://answers.yahoo.com/question/index?qid=20090502130515AA4IjPd)。这个答案只涉及Excel用户端,所以我必须通过将答案记录为宏来发现自己的VBA版本。 –
我使用了下面的函数。请注意,当指数为0时,函数返回单位矩阵,否则矩阵乘以指数次数。
'Raises matrix to a power
Function PowerMatrixNew(rngInp As Range, lngPow As Integer) As Variant()
'create identitu for power 0
Dim identity() As Variant
ReDim identity(rngInp.Rows.Count, rngInp.Rows.Count)
Dim i As Integer
Dim j As Integer
For i = 1 To rngInp.Rows.Count
For j = 1 To rngInp.Rows.Count
If (i = j) Then
identity(i, j) = 1
Else
identity(i, j) = 0
End If
Next j
Next i
PowerMatrixNew = identity
For i = 1 To lngPow
PowerMatrixNew = Application.WorksheetFunction.MMult(rngInp, PowerMatrixNew)
Next
End Function
- 1. python稀疏矩阵的矩阵功率
- 2. R中的矩阵功率
- 3. 矩阵功率和指针
- 4. 钻井功率双矩阵表
- 5. SSRS比率是矩阵
- 6. C++矩阵运算效率
- 7. MATLAB:限制从n到无穷大的矩阵的功率
- 8. NumPy的矩阵乘法效率的矩阵结构已知
- 9. 矩阵(scipy稀疏) - 矩阵(密集; numpy阵列)乘法效率
- 10. 提高对角线矩阵的负功率1/2
- 11. 帮助采取矩阵的功率恒定
- 12. 矢量化连续功率矩阵的创建
- 13. Haskell的矩阵功率而不使用if-else语句
- 14. Fortran中的矩阵功能
- 15. 应用的功能阵列,以矩阵
- 16. 如何使用特征库计算矩阵功率?
- 17. R:转移矩阵转移概率矩阵
- 18. R矩阵的概率误差
- 19. 矩阵元素的频率 - Matlab
- 20. 传递矩阵功能,C
- 21. C矩阵“裁切”功能
- 22. 如何DOM ::矩阵功能
- 23. 功能HTML5矩阵变换
- 24. R - 构造条件概率矩阵
- 25. 马尔可夫转换概率矩阵
- 26. Matlab - 稀疏矩阵系统分辨率
- 27. 情节加权频率矩阵
- 28. 如何创建频率矩阵?
- 29. 如何从MATLAB中的其他几个矩阵制作频率矩阵
- 30. R:应用功能在矩阵和保持矩阵尺寸
你是什么意思的矩阵的力量?样本输入和输出将会很有用。 – brettdj
你想把矩阵提升到一个能量吗?就像多次使用Excel的'MMULT'函数一样?或者只是提高每个元素的权力,这是相当微不足道的?因为这是两回事。 –