Вы можете совершить одну или несколько ошибок:
- Массивы не определены как
Variant
(Большинство функций рабочих листов не будут работать, если тип данных отличается от Variant
).
- Размеры
A
и y
не совпадают, как это необходимо для умножения матриц.
- В частности, не будет работать, если размер
y
равен (1,2)
вместо (2,1)
, как в примере ниже.
- и т.д ... Может быть что угодно, правда. Вы не говорите нам, какое сообщение об ошибке вы получаете.
Вот пример, который работает:
Dim A As Variant
Dim y As Variant
Dim x As Variant
ReDim y(1 To 2, 1 To 1)
y(1, 1) = 2
y(2, 1) = 3
ReDim A(1 To 2, 1 To 2)
A(1, 1) = 3
A(2, 1) = 1
A(1, 2) = 4
A(2, 2) = 2
x = WorksheetFunction.MMult(WorksheetFunction.MInverse(A), y)