Сохраните символьный массив в Сервере автоматизации
PutCharArray([in] BSTR varname, [in] BSTR workspace,
[in] BSTR string)PutCharArray(varname As String, workspace As String,
string As String)PutCharArray (h, 'varname', 'workspace', 'строка')
хранит символьный массив в PutCharArray(h,'varname','workspace','string')string в заданном workspace сервера, присоединенного, чтобы обработать h, присваивая ему переменный varname. Значениями для workspace является base или global. Имя функции является чувствительным к регистру.
Этот пример использует Визуальную
команду Basic® MsgBox для потока управления между MATLAB® и Клиентом Visual Basic. Чтобы запустить примеры в продуктах, которые выполняют код VBA, смотрите Советы.
Dim Matlab As Object
Try
Matlab = GetObject(, "matlab.application")
Catch e As Exception
Matlab = CreateObject("matlab.application")
End Try
MsgBox("MATLAB window created; now open it...")
Matlab.PutCharArray("str", "base", _
"He jests at scars that never felt a wound.")
MsgBox("In MATLAB, type" & vbCrLf _
& "str")
MsgBox("closing MATLAB window...")
Matlab.Quit()Откройте окно MATLAB, нажмите ОК, и затем введите str. Отображения MATLAB:
str = He jests at scars that never felt a wound.
Нажмите ОК, чтобы закрыть и отключить MATLAB.
Символьный массив, заданный в аргументе string, может иметь любые размерности. Однако PutCharArray изменяет размерности на постолбцовое представление 1 на n, где n является количеством символов в массиве. Выполнение следующих команд в MATLAB иллюстрирует это поведение:
h = actxserver('matlab.application');
chArr = ['abc'; 'def'; 'ghk']
chArr =
abc
def
ghk
PutCharArray(h,'Foo','base',chArr)
tstArr = GetCharArray(h,'Foo','base')
tstArr =
adgbehcfk Чтобы запустить примеры в Продуктах Office Microsoft®, которые выполняют код VBA, замените оператор:
MatLab = CreateObject("matlab.application")с:
Set MatLab = CreateObject("matlab.application")
Если вам нужно больше информации, то обратитесь к своей документации по продукту VBA.
Выполнение | GetCharArray | GetWorkspaceData | PutWorkspaceData