...
...

Приемы работы в Excel

Продолжая разговор о макросах в "офисном" приложении, начатый в предыдущей статье (см. КГ №48 за 2006 г.), попробуем их редактировать.

Одним из способов внесения изменений в записанный макрос является запись нового макроса. Однако это не всегда удобно, а часто бывает и утомительно из-за большого объема работы. В следующем примере изменим формат вводимых чисел в макросе Число. Для входа в режим редактирования макроса выполните команду Сервис Макрос. Появляется окно диалога Макрос, в котором после выбора нужного для редактирования элемента становятся доступными кнопки, в том числе кнопка Редактирование. Редактировать можно и непосредственно в модуле с текстом макроса. Текст макроса Число находится в модуле 1, расположенном после 16 листа рабочей книги. Используя кнопки прокрутки листов, найдите модуль 1 и нажмите кнопку мыши на его ярлычке. Перед вами появится текст макроса Число, записанный на языке Visual Basic:

Число Макрос Форматный код "# #??" Быстрый вызов: Ctrl+x
Sub Число()
Selection.NumberFormat = "# #??"
End Sub

Темный лес? Ничего, разберемся… Первые две строки составляют комментарий, последующие — текст макроса. Редактирование сводится к тому, что вместо форматного кода "# #??" вводится форматный код "# #??,00". Действуя аналогичным образом, вы можете внести более серьезные изменения в текст макроса. Фактически вы имеете возможность изменять текст программы Visual Basic, реализующий макрос. Это открывает перед вами широкие возможности в написании собственных программ. Теперь об удалении. Если макрос назначен клавише быстрого доступа, графическому объекту или кнопке, то процесс удаления является стандартным. Вы выбираете опцию Макрос пункта Сервис основного меню. Появляется окно диалога Макрос, содержащее список макросов текущей рабочей книги. После выбора макроса, который вы предполагаете удалить, станут доступными кнопки окна диалога Макрос, в том числе кнопка Удалить. Для удаления выбранного макроса достаточно лишь нажать эту кнопку. Существует и другой способ удаления макроса.

Если он записан в отдельном модуле, нужно удалить модуль. Для этого следует сделать его активным, а затем нажать правую кнопку мыши на его ярлычке. Появится окно диалога, в котором нужно выбрать команду Удалить. Если модуль содержит и другие макросы, нужно выделить весь текст удаляемого макроса и нажать клавишу Del на клавиатуре. Объекты, которым был назначен макрос, удаляются из режимов редактирования этих объектов. Некоторые трудности возникают в процессе удаления строк с названиями макросов из пункта Сервис основного меню. Для их удаления можно использовать окно диалога Редактор меню, которое открывается нажатием кнопки Редактор меню, расположенной на панели инструментов Visual Basic. Вы можете выбрать требующийся пункт из списка Меню. При этом в следующем списке Элементы меню появляются опции этого пункта. Вы можете выбрать и удалить нужную строку нажатием кнопки Удалить. Кнопка Сброс поможет восстановить стандартное состояние всех пунктов основного меню Excel. НО! После ее нажатия сделанные ранее изменения в пункты меню назначения с помощью клавиш Ctrl+Z вернуть невозможно — можно только закрыть файл без сохранения всех сделанных изменений, а затем открыть его снова. Вызов окна диалога Редактор меню можно осуществить и без использования кнопки Редактор меню. Для этого нужно выполнить следующие действия:

- Делаем активным какой-нибудь модуль. Если в рабочей книге нет ни одного макроса, создайте какой-нибудь (например, не выполняющий никаких действий).
- Выбираем пункт Сервис текущего меню. Появится ниспадающее меню, в котором присутствуют дополнительные опции — одной из них и является Редактор меню.
- Устанавливаем курсор на команду Редактор меню и нажимаем клавишу Enter. Появится необходимое окно диалога.

Небольшой совет. Не создавайте макрос, восстанавливающий пункты меню. Делайте эту работу вручную, и вы избежите неприятностей, связанных с потерей информации. Теперь о переименовании созданного ранее макроса. Специальной команды для этого нет, а часто возникает потребность исправить имя или присвоить макросу совершенно новое наименование. Для этого нужно войти в режим редактирования макроса и исправить заголовок в тексте программы.

Продолжение следует

Мария Рыжкова

© Компьютерная газета

полезные ссылки
Аренда ноутбуков