Обмен информацией с табличным процессором Excel
Прежде всего заметим, что обмен информацией между MathCAD и Excel может быть осуществлен либо через буфер обмена, либо через установление объектной связи (это было показано в п.2.1 на примере текстового процессора Word).
Более «быстрый» обмен можно осуществить, используя расширение MathCAD (начиная с версии MathCAD2000), называемое Add–In for Excel, которое устанавливает полноценную объектную связь между MathCAD и Excel. Однако это расширение инсталлируется отдельно после инсталляции пакета MathCAD. Предположим, что это расширение инсталлировано, и рассмотрим несколько случаев, часто встречающихся при работе в пакете MathCAD.
Рис. 2.1.5. Вставка в документ MathCAD фрагмента
документа из редактора Word
Случай 1. В программе Excel создан набор табличных данных, которые необходимо обработать с использованием функций операторов MathCAD.
Для конкретности предположим, что в Excel была сформирована прямоугольная матрица, и нам необходимо вычислить ее сингулярные числа, используя функцию MathCAD svds (фрагмент таблицы приведен на рис. 2.2.1).
Рис. 2.2.1. Фрагмент таблицы, созданной в Excel
Для этого необходимо выполнить следующие шаги:
а) находясь в документе MathCAD, обратиться к пункту меню Вставка, команда Компонент;
б) в появившемся диалоговом окне (см. рис. 2.2.2) выбрать строку Excel и щелкнуть кнопкой След;
в) в появившемся новом диалоговом окне (см. рис. 2.2.3) включить:
- кнопку Create an empty Excel worksheet – если будет заполняться пустая страница Excel;
- кнопку Create from file – если таблица записана в файле. Во втором случае, используя кнопку Browse, необходимо указать полное имя файла, в котором записана вставляемая таблица, и щелкнуть кнопкой Далее (в нашем случае, включаем нижнюю кнопку и указываем полное имя файла);
- матрицу А из диапазона ячеек B3:D7;
- матрицу В из диапазона ячеек В3:С7.
Рис. 2.2.2. Выбор компоненты Excel
Рис. 2.2.3. Задание полного имени файла с электронной таблицей
г) в появившемся диалоговом окне (рис. 2.2.4) установить Inputs = 0, Outputs = 1, а в поле Range задать диапазон ячеек, занимаемых элементами матрицы (в нашем примере B3:D7), и щелкнуть кнопкой Готово;
Рис. 2.2.4. Задание фрагмента таблицы
д) в появившемся окне документа MathCAD выводится вставляемый массив, в левом верхнем углу находится шаблон ¦: =, в который вводится имя массива (в нашем примере имя массива А). После чего с определенным таким образом массивом можно выполнять нужные вычисления. На рис. 2.2.5 приведен фрагмент документа MathCAD вычисления сингулярных чисел вставленной матрицы А.
Заметим, что существует возможность из одной таблицы Excel сформировать два или более массивов. Возвращаясь к таблице, приведенной на рис. 2.2.1, сформируем две матрицы:
Для этого на шаге г) в диалоговом окне устанавливаем Outputs = 2, в поле Range заполняем две строки (первая строка B3:D7, вторая В3:С7) и щелкаем кнопкой Готово. Затем в появившемся окне (см. рис. 2.2.6) в первом поле шаблона вводим имя массива А, во втором поле – имя В и щелкаем кнопкой Готово. На рис 2.2.7 показан фрагмент документа MathCAD, в котором введены сформированные матрицы А, В.
Рис. 2.2.5. Вычисления в документе MathCAD
Рис. 2.2.6. Шаблоны для формирования массивов
Очевидно, что «выделение» матрицы В из матрицы А
можно осуществить и средствами MathCAD (функция submatrix), но в общем случае формирование нескольких массивов MathCAD из различных ячеек таблицы Excel является очень эффективным средством связи MathCAD и Excel.
Остановимся еще на одном важном моменте. Сделав двойной щелчок на ячейках вставленной таблицы, мы вновь входим в электронную таблицу и можем сделать необходимое редактирование и вычисления. Для возврата в документ MathCAD достаточно щелкнуть мышью вне рамки электронной таблицы.
Рис. 2.2.7. Результаты вычислений в документе MathCAD
Случай 2. В MathCAD получены числовые данные, которые необходимо «передать» в таблицы процессора Excel (например, для построения «красивой» круговой диаграммы).
Для конкретности предположим, что в MathCAD сформированы два вектора: и . Первый вектор нужно расположить в диапазоне ячеек В2:В5, а второй – в С3:D6.
Выполним следующие шаги:
а) шаг а) из случая 1;
б) включаем кнопку Create an empty Excel и щелкаем кнопкой Далее (см. рис. 2.2.3);
в) в появившемся окне устанавливаем Outputs
= 0, Inputs = 2 и в поле Starting Cell заполняем две строки: в первой строке вводим адрес В2, во второй – С3 (см. рис. 2.2.8) и щелкаем кнопкой Готово;
г) в окне документа MathCAD выводится фрагмент пустой электронной таблицы, в левом нижнем углу находится два пустых шаблона (см. рис. 2.2.9), в которые вводим имена векторов x, y и щелкаем мышью вне рамки электронной таблицы;
д) в документе MathCAD появляется фрагмент электронной таблицы. Сделав на ней двойной щелчок, переходим в табличный процессор Excel для выполнения необходимых операций (форматирование, построение диаграмм и т.д.) На рис. 2.2.10 показан фрагмент таблицы с построенной диаграммой, и этот фрагмент расположен в документе MathCAD.
Рис. 2.2.8. Задание фрагмента таблицы
Рис. 2.2.9. Шаблоны имен массивов
Рис. 2.2.10. Диаграмма, построенная в Excel по данным
из документа MathCAD
В заключение параграфа заметим, что рассмотренные способы «связи» MathCAD с табличным процессором Excel существенно увеличивают возможности MathCAD при обработке табличных данных и их графической интерпретации.