Для упрощения работы с предыдущим заданием создадим простейший макрос - программу на языке VBA (VisualBasicforApplication), встроенном в офисные программы. Причем сделаем это, не зная пока самого языка. В этом нам поможет MacroRecorder - транслятор, переводящий на язык VBA действия пользователя с момента запуска MacroRecorder до окончания записи макроса.
Для активизации MacroRecorder выбираем команду Вид – Макросы – Запись макроса. В появившемся диалоговом окне Запись макроса (см. рисунок) задаем имя макроса («Staff») и описание макроса (не обязательно). В поле Сохранить в: оставляем опцию по умолчанию Эта книга (тогда созданный макрос сохранится на новом листе модуля в активной рабочей книге).
После нажатия OK на экране появляется кнопка Остановить запись в левом нижнем углу MSExcel.Теперь все ваши действия над ячейками будут записываться.
В данном случае действия будут простые. Вызовем сервисную функцию Подбор параметра, выполним описанные ранее действия по расчету штатного расписания и остановим запись макроса.
|
|
Чтобы посмотреть, какая же все-таки VBA - программа «создана» нами, выполним команду Вид - Макросы - Макросы. В появившемся диалоговом окне выберем макрос с именем «Staff» и нажмем кнопку Изменить. Откроется главное окно редактора VBA с текстом записанного макроса, например:
SubStaff()
'
' StaffМакрос
' Штатное расписание таблицы
'
'
Range("F11").GoalSeek Goal:=10000, ChangingCell:=Range("E3")
Именно эта процедура и выполняется, если в диалоговом окне Макросы нажать кнопку Выполнить. Рассчитываются оклады для заданного заранее нового количества штатных единиц.
Для еще большей оптимизации действий по расчету штатного расписания разместим на листе Кнопку, при нажатии на которую будут производиться нужные действия.
Кнопка является одним из элементов управления листа, создаваемых с помощью панели инструментов Формы. Обычно этой панели нет на экране, поэтому выполняем команду Файл | Параметры | Настройка ленты | Все команды. На экран выводится панель инструментов Всех команд, находим название Кнопка, затем нажимаем на Добавить >> (данная функция уже есть в ранее созданной вкладке). Выбираем на ней щелчком мыши форму Кнопка, при этом указатель мыши превращается в тонкий крестик. Щелкаем им по листу. На нем появляется кнопка с именем Кнопка1 и одновременно открывается диалоговое окно Назначение макроса объекту. В поле Имя макроса выбираем имя нашего макроса «Staff».
Теперь указанная выше процедура расчета окладов будет выполняться простым нажатием кнопки.