Я создал несколько C # DLL с несколькими открытыми переменными в: строках, парных числах, массивах парных чисел и т. Д., И ни одна из них не мешает использовать методы получения / установки.Я могу с радостью установить любой из них или прочитать их из VBA, просто используя:
DllThing.variable = VBAVariable
Это работает, если переменная представляет собой либо прямую переменную, либо массив значений типа double и VBAVariable соответствует типу.Однако, если мой VBAVariable - это массив Integer (), а мой DllThing.variable - это массив int [], он не работает, и я получаю ошибку времени выполнения '5', недопустимую процедуру или вызов.
Я сделал тестовую переменную int в той же DLL, и я могу установить и получить этот штраф, но это только массивы VBA Integer () -> C # int [], которые я не могу отправить (как кажется из упомянутых двойных массивов)работать нормально).
Есть идеи?