Изучение любого объекта - это прежде всего изучение его свойств и методов. Среди всех свойств объекта Range выделим следующие.
Address (Адрес) - возвращает текущее положение диапазона.
Count (Счет) - возвращает количество ячеек в диапазоне.
Formula (Формула) - возвращает формулу, по которой вычисляется значение, отображаемое в ячейке.
Offset (Смещение) - возвращает величину смещения одного диапазона относительно другого.
Resize (Изменение размеров) - позволяет изменять текущее выделение диапазона.
Value (Значение) - возвращает значения ячеек, составляющих диапазон.
Конечно, этот список не исчерпывает все свойства объекта Range, которых у него несколько десятков. Приведенные свойства, на мой взгляд, наиболее полезные и часто используемые.
Чтобы поэкспериментировать со свойствами объекта Range, создадим процедуру. Сначала закройте все открытые рабочие книги, а затем откройте новую рабочую книгу. Будем считать, что текущий рабочий лист у вас Лист1.
Введите число 100 в ячейку В1, число 200 - в ячейку В2 и 300 - в ячейку В3.
В ячейку В4 введите формулу =СУММ (В1: В3).
Нажмите комбинацию клавиш <Alt+F11>, чтобы открыть редактор Visual Basic, и вставьте модуль в текущую рабочую книгу.
Создайте новую процедуру и назовите ее СвойстваДиапазона.
MsgBox "Формула в ячейке В4: " & Range("B4").Formula
Перейдите на Лист1 рабочей книги и выполните процедуру СвойстваДиапазона. Появится первое окно с сообщением, что текущей ячейкой является ячейка С3 (рис. 10.1).
Щелкните на кнопке ОК. Следующее окно сообщения покажет значение, отображаемое в ячейке В4.
Щелкните на кнопке ОК. Последнее окно покажет формулу, содержащуюся в ячейке В4. (Обратите внимание, что хотя формула в ячейке В4 введена русскими буквами, процедура корректно ее обработала и преобразовала в формулу англоязычной версии Excel. - Прим. ред.)
Щелкните на кнопке ОК для закрытия окна сообщения.
Рис. 10.1. В создании текста этого сообщения использовано свойство Address
Рассмотрим эту процедуру подробнее. Ее полный код приведен в листинге 10.1.