Копирование макроса в другую книгу
Созданный макрос действует во всех листах открытой книги. Для копирования макроса в другую книгу нужно:
1 Открыть книгу, содержащую копируемый модуль, и книгу, в которую нужно его копировать – через меню Файл\Открыть или кнопку Открыть на панели инструментов Стандартная.
2 В меню Сервисустановить курсор на пункт Макрос и выбрать ко-
манду Редактор Visual Basic.
3 В меню Вид выбрать команду Окно проекта .
4. Перетащить в Окне проекта с помощью мыши копируемый модуль в нужную книгу.
Примечание. Чтобы получить возможность использовать макрос в любое время, сохраните его в личной книге макросов. Он получит имя следующим форматом: «PERSONAL.XLS. Имя макроса».
Более сложные макросы создаются с помощью редактора Visual Basic.
Контрольные вопросы
1 Что называется макросом, для чего он предназначен?
2 Как записать макрос?
3 Способы запуска макроса (перечислить).
4Запись макроса, запускаемого из меню Сервис и сочетанием клавиш с клавиатуры.
5 Использование относительной и абсолютной адресации при записи макросов.
Создание новой панели инструментов. Назначение кнопки для запуска макроса на новой панели инструментов .
7 Добавление кнопки запуска макроса на существующие панели инструментов (Стандартная,Форматирование и др.).
8 Добавление кнопки запуска на рабочий лист с помощью панели инструментов Формы.
Копирование модуля макроса в другую книгу.
Задание
1 Разработать макрос для вычисления прогнозируемых значений функции y = 0,2·x n , где n – номер компьютера в аудитории. Предварительно функцию нужно ввести в ячейки столбца или строки процессора Excel, задав изменение аргумента хв пределах 1...7 с шагом 1 и вычислив в соседнем столбце (или строке) по введённой формуле значения функции у(см. л.р. excel – 3). Прогноз выполнить с помощью функций ТЕНДЕНЦИЯ или РОСТ (см. л.р. excel – 4).
Макрос должен запускаться кнопкой на панели Стандартная и кнопкой, расположенной на рабочем листе.
2 Разработать макрос для построения графика функции y = 2·sin(n·x) , где n – номер компьютера в аудитории, для 10 значений аргумента х = 1...10. При записи макроса использовать относительную адресацию. Макрос должен запускаться сочетанием клавиш с клавиатуры и командой из меню Сервис.
3 Открыть новую книгу и скопировать в неё оба макроса. Создать новую панель инструментов. Назначить макросам новые кнопки для их запуска с новой панели инструментов .
Содержание отчёта
1Название, цель, содержание работы
2 Задание своего варианта
3 Письменные ответы на контрольные вопросы
4 Выводы по работе
На дискете должны быть сохранены результаты работы
Лабораторная работа №7
Поиск решения в Excel
Цель работы:научиться использовать процессор Excel
для решения задач оптимизации
Содержание работы:
1 Создание формы
2 Ввод данных в окно Поиск решения
3 Задание параметров поиска и решение задачи
Общие сведения
Математический аппарат Excel позволяет решать задачи линейного, нелинейного и целочисленного программирования. При этом оптимизация решения выполняется методом поиска решения, который запускается командой Сервис\Поиск решения.
Задача линейного программирования (ЗЛП) в общем случае формулируется следующим образом:
Определить максимум (минимум) целевой функции 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)
Рассмотрим применение процессора Excel для решения ЗЛП на примере.
Задача. МП выпускает товары Х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 - граничные условия модели
Решение задачи средствами Excel состоит из 3 этапов:
1 Создание формы для ввода условий задачи, ввод в неё исходных данных и зависимостей из математической модели.
2 Ввод данных из формы в окно Поиск решения из меню Сервис.
3 Задание параметров поиска и решение задачи.
Создание формы
а)Составление формы в виде:
А B C D E F G H
1 Переменная Х1 Х2 Х3 Х4 Формула Знак Св. член
2 Значение
3 Нули
4 Коэф. ЦФ 60 70 120 130 СП(В2:Е2)(В4:Е4) max
5 Трудовые 1 1 1 1 СП(В2:Е2)(В5:Е5) 16
6 Сырьевые 6 5 4 1 СП(В2:Е2)(В6:Е6) 110
7 Финансы 4 6 10 13 СП(В2:Е2)(В7:Е7) 100
б)Запись в ячейки В4:Е4 коэффициентов целевой функции F (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, т.к. символ абсолютной адресации строк $ в них не введён.