Excel VBA質問スレ Part7at TECH
Excel VBA質問スレ Part7 - 暇つぶし2ch828:デフォルトの名無しさん
08/08/15 05:45:16
質問があります。
正方行列(2×2)を一行(1×4)で表したとき、関数で配列(2×2)を作り、
さらにこの配列を関数で計算する方法が分かりません。例えば
1 2
3 4
の行列をエクセルシート上でA1:D1に1,2,3,4と入力したとき
=test(A1:D1)として配列(2×2)を作ります。

Function test(data As Range)
Dim A(1, 1) As Double
k = 1
For i = 1 To 2
For j = 1 To 2
k = k + 1
A(i - 1, j - 1) = data(k - 1)
Next
Next
test = A
End Function

このとき行列式(=1*4-2*3)を計算するため
=determ(test(A1:D1))とすると、#VALUE!となって困ってます。

Function determ(B As Double)
determ = B(0, 0) * B(1, 1) - B(0, 1) * B(1, 0)
End Function

いろいろ試してみたのですが、どうも配列の扱いがよく分からなくて。
XP Excel2003ですがよろしくお願いします。


次ページ
続きを表示
1を表示
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch