MLEvalString

Оцените команду MATLAB в MATLAB

Описание

пример

= MLEvalString(command) задает MATLAB® команда для оценки в рабочем пространстве MATLAB. Используйте этот синтаксис при работе в ячейке рабочего листа.

пример

MLEvalString command работает в макросе VBA.

пример

err = MLEvalString(command) возвращает состояние выполнения при выполнении MLEvalString в макросе VBA.

Примеры

свернуть все

Введите переменную a в ячейку A1. Введите числа 1 - 5 в область значений ячеек от B1 через F1.

Присвойте область значений ячеек к переменной a в использовании MATLAB MLPutMatrix. Введите этот текст в ячейке A3.

=MLPutMatrix(A1,B1:F1)

Worksheet cell A3 contains the entered text.

Использование diag создать матричный b, содержа диагональ с помощью этих пяти чисел в переменной a. Введите этот текст в ячейке A5.

=MLEvalString("b = diag(a);")

Cell A3 contains 0, which indicates the successful execution of the MLPutMatrix function.

Получите матричный b из MATLAB в Excel® ячейка A9. Введите этот текст в ячейке A7.

=MLGetMatrix("b","A9")

Матрица с диагональю появляется в ячейках A9 через E13.

Cell A7 contains 0, which indicates the successful execution of the MLGetMatrix function.

Введите переменную a в ячейку A1. Введите числа 1 - 5 в область значений ячеек от B1 через F1.

Кликните по вкладке Developer в Microsoft® Excel, и затем нажимает Visual Basic. Visual Basic® Окно Editor открывается.

Вставьте новый модуль и введите этот код VBA в Секцию кода окна. Этот пример кода принимает макрос под названием Diagonal. Для получения дополнительной информации при работе с модулями, смотрите Excel Help.

Sub Diagonal()

    MLPutMatrix "a", Range("B1:F1")
    MLEvalString "b = diag(a);"
    MLGetMatrix "b", "A3"
    MatlabRequest

End Sub

Запустите макрос путем нажатия на Run Sub/UserForm (F5). Диагональная матрица появляется в ячейках A3 через E7. Для получения дополнительной информации на рабочих макросах, смотрите Excel Help.

Worksheet cell A1 contains the variable a, cells B1 through F1 contain numbers 1 through 5, and cells A3 through E7 contain the diagonal matrix.

Введите переменную a в ячейку A1. Введите числа 1 - 5 в область значений ячеек от B1 через F1.

Кликните по вкладке Developer в Microsoft Excel, и затем нажмите Visual Basic. Окно Visual Basic Editor открывается.

Вставьте новый модуль и введите этот недопустимый код VBA в Секцию кода окна. Этот пример кода принимает макрос под названием Diagonal. Для получения дополнительной информации при работе с модулями, смотрите Excel Help.

Sub Diagonal()

    Dim err As Variant

    MLPutMatrix "a", Range("B1:F1")
    err = MLEvalString("b = diag(2a);") 'Invalid code
    
    If err <> 0 Then
        MsgBox err
    End If

    MLGetMatrix "b", "A3"
    MatlabRequest

End Sub

Запустите макрос путем нажатия на Run Sub/UserForm на панели инструментов VBA. Для получения дополнительной информации на рабочих макросах, смотрите Excel Help.

Эта ошибка Spreadsheet Link™ отображения: #COMMAND!. Чтобы отобразить ошибки MATLAB, смотрите MLShowMatlabErrors.

Входные параметры

свернуть все

Команда MATLAB, чтобы оценить в виде строки. Заключите строку в двойные кавычки. Или, введите строку в ячейку без кавычек и введите соответствующую ссылку на ячейку без кавычек как входной параметр.

Пример: "sum"

Пример: A1

Выходные аргументы

свернуть все

Состояние Execution, возвращенное как строка или номер. Если MLEvalString сбои, затем err строка, содержащая код ошибки или сообщение об ошибке. В противном случае команда выполняется успешно и err 0.

По умолчанию, когда MLEvalString сбои, err содержит стандартную ошибку Spreadsheet Link, такую как #COMMAND. Чтобы возвратить ошибки MATLAB, выполниться MLShowMatlabErrors.

Советы

  • Заданное действие изменяет только рабочее пространство MATLAB и не оказывает влияния на рабочую область Microsoft Excel.

  • Чтобы работать с кодом VBA в Excel с Spreadsheet Link, необходимо включить Spreadsheet Link как ссылку в Редакторе Microsoft Visual Basic. Для получения дополнительной информации смотрите Установку.

Представлено до R2006a