Excel. Трюки и эффекты | страница 66



With rgRange.Borders(xlEdgeBottom)

.Weight = xlMedium

.LineStyle = xlDash

.Color = RGB(255, 0, 255)

End With

End Sub

Очевидно, что цвета и толщину линии можно изменять по своему усмотрению.

Автоматическое определение адреса ячейки

Можно настроить программу таким образом, что при щелчке кнопкой мыши на любом месте рабочего листа на экране будет появляться окно с информацией об адресе текущей ячейки, причем в разных форматах. Код макроса, который позволяет решить эту задачу, приведен в листинге 2.32 (следует учитывать, что данный код должен быть помещен в модуль рабочего листа).

Листинг 2.32. Информация об адресе активной ячейки

Sub Worksheet_SelectionChange(ByVal Target As Range)

' Вывод адреса ячейки в различных форматах

MsgBox Target.Address() & vbCr & _

Target.Address(RowAbsolute:=False) & vbCr & _

Target.Address(ReferenceStyle:=xlR1C1) & vbCr & _

Target.Address(ReferenceStyle:=xlR1C1, _

RowAbsolute:=False, ColumnAbsolute:=False, _

RelativeTo:=Worksheets(1).Cells(2, 2))

End Sub

Теперь при щелчке кнопкой мыши на ячейке, например, Е9 на экране отобразится окно со следующим сообщением:

$E$9

$E9

R9C5

R[7]C[3]

Адрес ячейки представлен в нескольких форматах, в том числе и относительно другой ячейки. В качестве ячейки, относительно которой определяется адресация, в данном случае используется ячейка В2 (см. в коде значение параметра RelativeTo).

Автоматизация добавления примечаний в указанном диапазоне

Трюк, который мы сейчас рассмотрим, позволяет быстро вставить примечание в ячейки определенного диапазона, соответствующие указанным требованиям.

Для достижения такого эффекта можно воспользоваться макросом, код которого приведен в листинге 2.33.

Листинг 2.33. Добавление примечаний в диапазон

Sub CreateComments()

Dim cell As Range

' Производим поиск по всем ячейкам диапазона и добавляем

примечания _

ко всем ячейкам, содержащим слово «Выручка»

For Each cell In Range(«B1:B100»)

If cell.Value Like «*Выручка*» Then

cell.ClearComments

cell.AddComment «Неучтенная наличка»

End If

Next

End Sub

С помощью данного макроса обрабатывается диапазон В1:В100. После применения макроса ко всем ячейкам, содержащим текст Выручка, будет добавлено примечание Неучтенная наличка. При этом в примечании будет отсутствовать имя пользователя, его создавшего. Если в указанных ячейках содержалось другое примечание, то оно будет удалено и заменено тем, которое указано в макросе. Очевидно, что с помощью подобных макросов можно создавать произвольные примечания к любым ячейкам указанного диапазона.