Запуск макроса из окна макрос
Для запуска макроса можно назначать или не назначать кнопку, в любом случае он фиксируется в списке макросов. Его можно увидеть в окне Макрос, которое открывается командой Вид\группа Макросы\Макросы\Макросы(рисунок 6.3).
Рисунок 6.3 –Вывод окна Макросы (справа)
Поэтому для запуска макроса достаточно выделить в окне имя нужного макроса, например График и нажать клавишу Выполнить.
Более сложные макросы создаются с помощью редактора VisualBasic.
Контрольные вопросы
1 Что называется макросом, для чего он предназначен?
2 Как записать макрос?
3 Способы запуска макроса (перечислить).
Запись макроса, запускаемого из окна Макрос и сочетанием клавиш с клавиатуры.
5 Использование относительной и абсолютной адресации при записи макросов.
6 Как сделать макрос доступным для всех открытых книг MSExcel?
Задание
1 Разработать макрос для вычисления прогнозируемых значений функции y = 0,2·xn, где n – номер компьютера в аудитории. Предварительно функцию нужно ввести в ячейки столбца или строки процессора Excel, задав изменение аргумента хв пределах 1...7 с шагом 1 и вычислив в соседнем столбце (или строке) по введённой формуле значения функции у. Прогноз выполнить с помощью функций ТЕНДЕНЦИЯ или РОСТ. Макрос должен запускаться из окна Макроси быть доступен во всех открытых книгах MSExcel.
2 Разработать макрос для построения графика функции y = 2·sin(n·x) , где n – номер компьютера в аудитории, для 10 значений аргумента х = 1...10. При записи макроса использовать относительную адресацию. Макрос должен запускаться сочетанием клавиш с клавиатуры и быть доступен во всех открытых книгах MSExcel.
Открыть новую книгу и выполнить в ней оба макроса.
Содержание отчёта
1Название, цель, содержание работы
2 Задание своего варианта
3 Письменные ответы на контрольные вопросы
4 Выводы по работе
На своём носителе должны быть сохранены результаты работы
Практическое занятие №7
Поиск решения в MSExcel
Цель работы:научиться использовать процессор MSExcel для решения задач оптимизации
Содержание работы:
1 Создание формы
2 Ввод данных в окно Поиск решения
3 Задание параметров поиска и решение задачи
Общие сведения
Математический аппарат MSExcel позволяет решать задачи линейного, нелинейного и целочисленного программирования. При этом оптимизация решения выполняется методом поиска решения, который запускается командой Данные\Поиск решения…(Активируется вПараметрыExcel\Надстройки)– рисунок 7.1.
Рисунок 7.1. Вкладка Данные, группа Анализ
Задача линейного программирования (ЗЛП) в общем случае формулируется следующим образом:
Определить максимум (минимум) целевой функции F max(min) при заданной системе ограничений (2) и граничных условий (3):
Fmax(min) =A1*X1+A2*X2+...+An*Xn (1)
B11*X1+B12*X2+...+B1n*Xn<=C1
B21*X1+B22*X2+...+B2n*Xn<=C2
............................ .................... (2)
Bn1*X1+Bn2*X2+...+Bnn*Xn<=Cn
Xi>=0, i=1...n (3)
Система уравнений (1)..(3) является математической моделью ЗЛП.
Рассмотрим, как применяется процессора MSExcel для решения ЗЛП:
Задача. МП выпускает товары Х1,Х2,Х3,Х4, получая от реализации каждого прибыль в 60,70,120,130 руб. соответственно. Затраты на производство приведены в табл. 1. Определить:
1 Максимум прибыли в зависимости от оптимального распределения затрат.
2 Минимум ресурсов, необходимых для получения максимальной прибыли.
Таблица 1
Затраты | Х1 | Х2 | Х3 | Х4 | Всего |
Трудовые | |||||
Сырьевые | |||||
Финансы |
Составим математическую модель процесса по описанию задачи:
60Х1+70Х2+120Х3+130Х4 = Fmax – целевая функция прибыли.
Х1+Х2+Х3+Х4<= 16
6Х1+5Х2+4Х3+Х4<= 110 - ограничения модели
4Х1+6Х2+10Х3+13Х4<= 100
Хj>=0 - граничные условия модели
Отметим, что целевая функция и система ограничений математически представляют собой сумму произведений аргументов Хj на числовые коэффициенты, поэтому при вводе модели в MSExcel применяется функция СУММПРОИЗВ().
Решение задачи средствами MSExcel состоит из 3 этапов:
1 Создание формы для ввода условий задачи, ввод в неё исходных данных и зависимостей из математической модели.
2 Ввод данных из формы в окно Поиск решения из меню Данные.
3 Задание параметров поиска и решение задачи.
Создание формы
а)Составление формы в виде:
Рисунок 7.2 – Форма в MSExcel, созданная по модели
б)Запись в ячейки В4:Е4 коэффициентов целевой функции Fmax (1), в В5:Е7 коэффициентов из системы ограничений (2) и в ячейки Н5:Н7 - свободных членов из системы (2).
в)Ввод формул с помощью процедуры fх- Мастер функций.
Для целевой функции: щелкнуть левой клавишей мыши по ячейке F4, затем по значку Мастер функций fхв Строке ввода, в появившемся окне Мастер функций, шаг 1 из 2в списке Категория:Математические, в нижней части –выделить функцию СУММПРОИЗВ, нажатьклавишу ОК, в окне "Аргументы функции" в поле Массив 1 ввести с клавиатуры В2:Е2 (ячейки, в которых будут варьироваться Х1..Х4), в поле Массив 2 ввести В4:Е4 (коэффициенты целевой функции ЦФ).
Примечание. Можно вводить В2:Е2 не с клавиатуры, а поставить курсор в окно Массив 1, а затем протащить курсор при нажатой левой клавише мыши по ячейкам В2:Е2, имена ячеек сами запишутся в окно. Аналогично поступить с полем Массив 2.
Нажать клавишу ОК, в ячейку F4 запишется формула 60*Х1+70*Х2+120*Х3+ 130*Х4 в виде СУММПРОИЗВ(В2:Е2)(В4:Е4)
Для левых частей ограничений аналогично:
- в ячейку F5 вносим СУММПРОИЗВ(В2:Е2)(В5:Е5),
- в ячейку F6 вносим СУММПРОИЗВ(В2:Е2)(В6:Е6),
- в ячейку F7 вносим СУММПРОИЗВ(В2:Е2)(В7:Е7).
Примечание. Чтобы каждый раз для новой ячейки F5..F7 не вызывать Мастер функций fх, можно скопировать в буфер команду из F4 СУММПРОИЗВ(B$2:E$2)(B4:E4) кнопкой на панели инструментов Копировать в буфер или командой из пункта меню Главная, затем вставить в выделенную ячейку F5..F7 эту команду с помощью кнопки Вставитьиз пункта меню Главная, при этом ячейки B$2:E$2 не изменятся, а В4:Е4 поменяются на В5:Е5, В6:Е6 и В7:Е7, т.к. символ абсолютной адресации строк $ в них не введён.