- •Объектная модель
- •Полная и неявная ссылка на объект
- •Ссылка на активную рабочую книгу, лист, ячейку, диаграмму и принтер
- •Загрузка инсталлированной надстройки
- •Управление уровнем безопасности
- •Семейство встроенных диалоговых окон
- •Объект FileDialog
- •Методы объекта Application
- •Установка выполнения специфицированной процедуры при нажатии заданной комбинации клавиш
- •Переопределение горячих клавиш приложения
- •Проверка правописания отдельного слова
- •Симулирование ячеек рабочего листа
- •Электронные часы в ячейке рабочего листа
- •Получение данных из закрытой рабочей книги
- •События объекта Application
- •IgnoreReadOnlyRecommended — необязательный параметр, указывающий надо ли отображать предупреждение о том, что книга была сохранена в режиме "только для чтения";
- •Установка и снятие защиты книги
- •Методы объекта Worksheet
- •Объект Protection
- •События объекта Worksheet
- •Добавление к графическому объекту обработчика события Click
- •Примечание
- •Свойства объекта Range
- •Управление стилем границы диапазона и объекта Border
- •Функции rgb и qbColor
- •Доступ к отдельным ячейкам диапазона
- •Выбор элементов на рабочем листе или в книге
- •Объект Characters
- •Объект Comment
- •Определение текущего диапазона
- •Объект Font
- •Объект Interior
- •Установка числового формата
- •Переопределение размеров диапазона
- •Методы объекта Range
- •Табуляция функции
- •Заполнение диапазона по одному значению
- •Специальная вставка
- •Вставка диапазона с транспонированием
- •Бегущая картинка
- •Поиск значения в диапазоне
- •Повторный поиск и поиск всех значений
- •Поиск по формату
- •Замена значений
- •Ввод в диапазон неповторяющихся значений
- •Озвучивание текста
- •Построение графа
- •Пользовательские функции
- •Математические функции
- •Надстройки
- •Где хранятся макросы?
Определение текущего диапазона
Свойство CurrentRegion объекта Range возвращает текущий диапазон (current region). Текущий диапазон — это максимальный диапазон, окруженный любой комбинацией пустых строк и столбцов, ячейки которого не пусты, а сам он содержит в себе данный диапазон.
Например, предположим в диапазоне А1:Е12 имеется таблица, которая по столбцу F и 13-й строке окружена пустыми ячейками. Тогда следующая инструкция вызовет выделение всей таблицы, т. е. диапазон А1:Е12:
Cells(1, 1).CurrentRegion.Select
Немного усложним задачу. Пусть у этой таблицы первая строка отведена под заголовок. Тогда для того чтобы выделить всю таблицу без заголовка, достаточно применить инструкции:
Dim r As Range
Set r = Cells(1, 1).CurrentRegion
r.Offset(1, 0).Resize(r.Rows.Count - 1, r.Columns.Count).Select
В следующем примере переменной у присваивается значение, равное числу строк в текущем диапазоне, содержащем ячейку А1:
y = Range("A1").CurrentRegion.Rows.Count
Нахождение крайней ячейки диапазона
в указанном направлении
Свойство End объекта Range возвращает крайнюю ячейку в указанном направлении в диапазоне, содержащем заданный диапазон.
End(Direction)
Здесь допустимым значением параметра Direction может быть одна из следующих переменных XlDirection: xlToLeft, xlToRight, xlUp и xlDown.
Например, в следующем примере строка "х" будет введена в ячейку А4, а "у" — в ячейку В2:
Range("A1:B4").Value = "Тест"
Range("Al:В4").Select
Selection.End(xlDown).Value = "x"
Range("A2").End(xlToRight).Value = "y"
Нахождение строки и столбца, содержащих
данную ячейку
Свойства EntireColumn и EntireRow объекта Range возвращают столбец и строку, содержащие данную ячейку.
Следующий код, например, очищает всю строку, содержащую данную ячейку:
ActiveCell.EntireRow.Clear
Объект Hyperlink
Свойство Hyperlinks объекта Range возвращает семейство Hyperlinks, состоящее из объектов Hyperlink, инкапсулирующих в себе информацию о гиперссылках.
У семейства Hyperlinks наиболее важными свойствами являются свойства Count и Item, возвращающие число элементов и конкретный элемент семейства. Кроме того, в этом семействе имеются два метода: метод Delete, который удаляет гиперссылку, и метод Add, который создает новый элемент семейства.
Add(Anchor, Address, SubAddress, ScreenTip, TextToDisplay)
Здесь:
Anchor — обязательный параметр, идентифицирующий местоположение гиперссылки;
Address — обязательный параметр, задающий адрес гиперссылки;
SubAddress — необязательный параметр, определяющий локальный адрес по отношению к адресу документа;
ScreenTip— необязательный параметр, задающий текст всплывающей подсказки;
TextToDisplay — необязательный параметр, задающий текст гиперссылки.
Основные свойства объекта Hyperlink перечислены в табл. 5.21, а методы — в табл. 5.22.
Таблица 5.21. Свойства объекта Hyperlink
Свойство |
Возвращает |
Address |
Адрес документа, в который происходит переход |
EmailSubject |
Строку, отображаемую в разделе Тема сообщения, при отсылке электронной почты |
Name |
Имя объекта |
Parent |
Ссылку на объект (диапазон), в котором расположена гиперссылка |
Range |
Ссылку на диапазон, в котором расположена гиперссылка |
ScreenTip |
Текст всплывающей подсказки |
Shape |
Объект Shape, к которому присоединена гиперссылка |
SubAddress |
Локальный адрес по отношению к адресу документа |
TextToDisplay |
Текст гиперссылки |
Таблица 5.22. Методы объекта Hyperlink
-
Метод
Описание
AddToFavorites
Добавляет гиперссылку в раздел Избранное браузера
CreateNewDocument
Открывает новый документ, связанный с указанной гиперссылкой
Delete
Удаляет гиперссылку
Follow
Отображает указанный документ, если он уже загружен. В противном случае производит его загрузку и отображение.
Follow(NewWindow, AddHistory, Extralnfo, Method, Headerlnfo)
Здесь:
NewWindow— необязательный параметр, если он принимает значение True, то документ отображается в новом окне, если его значение равно False, то в том же самом;
AddHistory— не используется, зарезервирован для будущих версий MS Excel;
Extralnfo — необязательный параметр, содержащий дополнительную информацию, используемую для HTTP-протокола;
Method— необязательный параметр, специфицирующий то, как передается информация из параметра Extralnfo;
Headerlnfo — необязательный параметр, содержащий заголовочную информацию, передаваемую при HTTP-запросе
Например, следующая инструкция в ячейке А1 создает гиперссылку ms со всплывающей подсказкой Microsoft для открытия Web-страницы http:// microsoft.com.
With Worksheets(1)
.Hyperlinks.Add Anchor: = .Range("A1"), _
Address:="http://microsoft.com", _
ScreenTip:="Microsoft", _
TextToDisplay:="MS"
End With
