構文
構文は以下の通りです。
WorksheetFunction.MDeterm(配列)
解説
WorksheetFunctionは、ExcelVBAの組み込みオブジェクトで、Excelのワークシート関数をVBAから呼び出す際に使用します。MDeterm関数は、行列の行列式を計算する関数です。この関数は、指定された範囲または配列が正方行列である場合に、その行列の行列式を返します。行列式とは、行列の特性を表す値で、特に線形代数で重要な役割を果たします。
プログラミング例
具体的なプログラミング例を紹介します。
(例1)2x2 行列の行列式を計算
Sub 行列式を計算()
' 変数を定義
Dim 行列(1 To 2, 1 To 2) As Double
Dim 結果 As Double
' 行列の値を設定
行列(1, 1) = 3
行列(1, 2) = 8
行列(2, 1) = 4
行列(2, 2) = 6
' 行列式を計算
結果 = WorksheetFunction.MDeterm(行列)
' 結果を表示
MsgBox "行列式は " & 結果 & " です。"
End Sub
' 変数を定義
Dim 行列(1 To 2, 1 To 2) As Double
Dim 結果 As Double
' 行列の値を設定
行列(1, 1) = 3
行列(1, 2) = 8
行列(2, 1) = 4
行列(2, 2) = 6
' 行列式を計算
結果 = WorksheetFunction.MDeterm(行列)
' 結果を表示
MsgBox "行列式は " & 結果 & " です。"
End Sub
上記のプログラムでは、2x2の行列を作成し、その行列の行列式をMDeterm関数で計算しています。行列の各要素は 行列(行, 列)形式で指定されており、MsgBox 計算結果を表示します。
(例2)Excelの範囲を使用して行列式を計算
Sub 範囲の行列式を計算()
' 変数を定義
Dim 結果 As Double
' シートの範囲を指定して行列式を計算
結果 = WorksheetFunction.MDeterm(Range("A1:B2"))
' 結果を表示
MsgBox "範囲の行列式は " & 結果 & " です。"
End Sub
' 変数を定義
Dim 結果 As Double
' シートの範囲を指定して行列式を計算
結果 = WorksheetFunction.MDeterm(Range("A1:B2"))
' 結果を表示
MsgBox "範囲の行列式は " & 結果 & " です。"
End Sub
上記のプログラムでは、Excelワークシート上のセル範囲A1:B2を指定して、その範囲の行列式を計算しています。Rangeを使うことで、直接シート上のデータを扱うことができます。
まとめ
MDeterm関数は、行列の行列式を計算します。正方行列でのみ使用可能です。行列は配列またはシートの範囲として指定できます。