Создайте макросы из функций MATLAB

Создайте дополнения и макросы с одним и несколькими Выходными параметрами

Основной рабочий процесс для дополнения Microsoft® Excel® и макро-создания может быть найден в Create Дополнением Excel из MATLAB и Интегрировать Дополнение и COM-компонент с Microsoft Excel.

Работа с вводами и выводами переменной длины

Этот пример показывает вам, как работать с и создать макросы из, функции, имеющие вводы и выводы переменной длины

Обзор

myplot берет один целочисленный вход и строит график от 1 до того номера.

mysum берет вход varargin из типа integer, добавляют все числа и возвращают результат.

myprimes берет один целочисленный вход n и возвращает все простые числа, меньше чем или равные n.

Файл Microsoft Excel, xlmulti.xls, демонстрирует эти функции несколькими способами.

Где пример кода?

Для получения дополнительной информации о доступе к примеру кода из продукта, смотрите, что Файл В качестве примера Копирует.

Создайте проект

Используйте следующую информацию, когда вы работаете через этот пример с помощью инструкций в Create Дополнение Excel из MATLAB:

Название проектаxlmulti
ClassName xlmulticlass
Файл, чтобы скомпилировать
xlmulti папка myfiles\work)
myplot.m
myprimes.m
mysum.m

Добавьте функцию COM в дополнение Microsoft Excel

  1. Запустите Microsoft Excel в своей системе.

  2. Откройте файл myfiles\work\xlmulti\xlmulti.xls.

    Пример появляется как показано:

Примечание

Если подсказка Excel говорит, что этот файл содержит макросы, нажмите Enable Macros, чтобы запустить этот пример.

Вызовите myplot

Этот рисунок вызывает функциональный myplot со значением 4. Чтобы выполнить функцию, сделайте A7 (=myplot(4)) активная ячейка. Нажмите F2 и затем Войдите.

Эта процедура строит график от 1 до 4 в Окне рисунка MATLAB®. Этой диаграммой можно управлять так же к способу, которым можно было бы управлять фигурой в MATLAB. Некоторая функциональность, такая как способность изменить стиль линии или окрасить, не доступна.

Ячейка вызова содержит 0, потому что функция не возвращает значение.

Вызовите mysum Четыре Различных Пути

Этот рисунок вызывает функциональный mysum четырьмя различными способами:

  • Первое (ячейка A14) принимает значения 1 - 10, добавляет их и возвращает результат 55 (=mysum(1,2,3,4,5,6,7,8,9,10)).

  • Второе (ячейка A19) берет объект области значений, который является областью значений ячеек со значениями 1 - 10, добавляет их и возвращает результат 55 (=mysum(B19:K19)).

  • Третье (ячейка A24) берет несколько объектов области значений, добавляет их и возвращает результат 120 (=mysum(B24:K24,B25:L25,B26:D26)). Этот рисунок демонстрирует, что области значений не должны быть одного размера и что всем ячейкам не нужно значение.

  • Четвертое (ячейка A30) берет комбинацию объекта области значений и явным образом объявленных стоимостей, добавляет их и возвращает результат 16 (=mysum(10,B30:D30)).

Этот рисунок запускается, когда файл Excel открыт. Чтобы повторно активировать рисунок, активируйте соответствующую ячейку. Затем нажмите, F2, сопровождаемый, Входят.

Макрос myprimes

На этом рисунке, макро-myprimes вызывает функциональный myprimes.m с начальным значением 10 в ячейке A42. Функция возвращает все простые числа меньше чем 10 в ячейки B42 через E42.

Чтобы выполнить макрос, из основного окна Excel (не Визуальный Редактор Basic®), открывают диалоговое окно Macro, путем нажатия клавиш Alt и F8 одновременно, или путем выбора Tools> Macro> Macros.

Выберите myprimes из списка и нажимают Run.

Эта функция автоматически изменяет размер, если возвращенный выходной параметр больше, чем выходной указанный диапазон. Измените значение в ячейке A42 к номеру, больше, чем 10. Затем повторно выполните макрос. Выход возвращает все простые числа меньше, чем номер, который вы ввели в ячейке A42.

Смотрите код Microsoft Visual Basic (Необязательно)

  1. На главном окне Microsoft Excel выберите Tools> Macro> Visual Basic Editor.

  2. На Microsoft Visual Basic, в окне Project - VBAProject, дважды кликают, чтобы расширить VBAProject (xlmulti.xls)

  3. Расширьте Modules папка и дважды кликает Module1 модуль. Это открывает окно VB Code с кодом для этого проекта.

Для получения дополнительной информации

Для получения дополнительной информации о работе с аргументами переменной длины, см. Программу с Аргументами переменной.