Изменим имя макроса “Месяцы” на “Месяцы_с_абсолютными_адресами”. Для этого войдите в режим редактирования макроса “Месяцы”. Ниже расположен текст программы.
Месяцы Макрос Быстрый вызов: Ctrl+o
Sub Месяцы()
ActiveCell.FormulaR1C1 = “январь”
Selection.AutoFill Destination:=ActiveCell.Range(“A1:A12”); _
Type:=xlFillDefault
ActiveCell.Range(“A1:A12”).Select
End Sub
Первая строка является комментарием. Заменим “Месяцы” на “Месяцы_с_абсолютными_адресами”. Соответствующим образом изменим комментарий. В результате получим новый текст программы макроса:
'Месяцы_с_абсолютными_адресами Макрос Быстрый вызов: Ctrl+o
Sub Месяцы_с_абсолютными_адресами()
ActiveCell.FormulaR1C1 = “январь”
Selection.AutoFill Destination:=ActiveCell.Range(“A1:A12”); _
Type:=xlFillDefault
ActiveCell.Range(“A1:A12”).Select
End Sub
Новое имя автоматически заменит старое в списках макросов. По клавише быстрого вызова будет вызываться макрос с новым именем. Но не все замены происходят автоматически. Если ваш макросу были назначены графические объекты или кнопки, то вам нужно будет самим сделать для них переназначения.
Запись в существующий макрос новых действий
Если вы хотите добавить в макрос новые действия, то вам нужно включить соответствующий режим записи макроса. Для этого выполните следующие действия:
Сделайте активным модуль, в котором находится макрос.
В тексте программы установите курсор в место ввода новых действий.
Выполните команду Сервис | Запись макроса | Отметить позицию. Теперь ваши действия при записи макроса будут записываться в программу с того места, где вы установили курсор.
Перейдите в лист рабочей книги, где вы будете записывать новые действия.
Выполните команду Сервис | Запись макроса | Записать с отметки. Начиная с этого момента все ваши действия будут записываться в макрос.
Выполните все дополнительные действия макроса.
Нажмите на кнопку Остановить запись.
Рассмотрим конкретный пример добавления новых записей.
Полезно сначала выполнить макрос, в который вы собираетесь добавлять новые записи. Тогда вам легче будет ориентироваться, в каком месте таблицы установить указатель перед тем как начать выполнять действия.
Пример 5. Внесение изменений в существующий макрос
Внесем изменения в макрос “Заголовок”, который был записан в примере 6.2. Изменения будут касаться формата заголовка. Расположим заголовок “Типы компьютеров” в центре строки над названиями типов и введем другой шрифт для заголовка.
Приведем текст программы, реализующий макрос “Заголовок” и укажем место расположения курсора строкой с комментарием “‘место установки курсора”.
Заголовок Макрос назначен пункт меню Сервис “Тип ЭВМ”
Sub Заголовок()
ActiveCell.FormulaR1C1 = “Тип компьютера”
ActiveCell.Offset(1; 0).Range(“A1”).Select
ActiveCell.FormulaR1C1 = “CP_35_SR”
ActiveCell.Offset(0; 1).Range(“A1”).Select
ActiveCell.FormulaR1C1 = “CP_40_SR”
ActiveCell.Offset(0; 1).Range(“A1”).Select
ActiveCell.FormulaR1C1 = “CP_55_LS”
ActiveCell.Offset(0; 1).Range(“A1”).Select
ActiveCell.FormulaR1C1 = “CP_55_SX”
ActiveCell.Offset(0; -3).Range(“A1:D1”).Select
ActiveCell.Activate
Selection.Columns.AutoFi
'место установки курсора
End Sub
Для внесения новых записей в макрос “Заголовок” выполните следующие действия:
· Удалите комментарий в предпоследней строке программы и поместите там указатель.
· Для того чтобы определить позицию, с которой будут записываться новые действия, выполните первые 5 шагов алгоритма внесения изменений в макрос.
· Перед тем как выполнить 6 шаг алгоритма внесения изменений в макрос, запустите макрос “Заголовок”. Это позволит вам определить положение курсора на рабочем листе, где будут вноситься новые действия.
· Выполните 6 шаг алгоритма внесения изменений в макрос. Все последующие действия будут записаны.
· Выделите четыре ячейки, включающие заголовок “Тип компьютера”.
· Вызовите окно диалога “Формат ячейки”, нажав Ctrl+1.
· Выберите вкладку “Выравнивание”, в которой установите флажок Центрировать по выделению. Таким образом мы поместим заголовок в середину строки.
· Выберите вкладку “Шрифт”, в которой установите стиль Italic и размер шрифта 16. Нажмите кнопку OK, чтобы выйти из режима форматирования ячейки.
· Нажмите кнопку Остановить макрос.
После завершения записи новых действий в макрос “Заголовок” мы получили новый текст программы:
Заголовок Макрос назначен пункт меню Сервис “Тип ЭВМ”
Sub Заголовок()
ActiveCell.FormulaR1C1 = “Тип компьютера”
ActiveCell.Offset(1; 0).Range(“A1”).Select
ActiveCell.FormulaR1C1 = “CP_35_SR”
ActiveCell.Offset(0; 1).Range(“A1”).Select
ActiveCell.FormulaR1C1 = “CP_40_SR”
ActiveCell.Offset(0; 1).Range(“A1”).Select
ActiveCell.FormulaR1C1 = “CP_55_LS”
ActiveCell.Offset(0; 1).Range(“A1”).Select
ActiveCell.FormulaR1C1 = “CP_55_SX”
ActiveCell.Offset(0; -3).Range(“A1:D1”).Select
ActiveCell.Activate
Selection.Columns.AutoFit
ActiveCell.Offset(-1; 0).Range(“A1:D1”).Select
With Selection
.HorizontalAlignment = xlCEnterAcrossSelection
.VerticalAlignment = xlBottom
.WrapText = False
.Orientation = xlHorizontal
End With
With Selection.Font
.Name = “TimesET”
.FontStyle = “Italic”
.Size = 16
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlNone
.ColorIndex = xlAutomatic
End With
End Sub
Перед последним оператором программы осталась пустая строка. Вы можете удалить ее.
Теперь результат работы макроса “Заголовок” имеет следующий вид:
Тип компьютера
CP_35_SR CP_40_SR CP_55_LS CP_55_SX
Назначение макроса