Еще раз повторяю вопрос - отправил договор и сканы документов по почте - в начале августа, до 5 го, внес предоплату - летом действовала скидка - чтобы пройти курс в августе, но я уезжал в Москву. По возвращению - и в течение месяца - никакого ответа, никаких зачислений, ничего. Как проверить, пришли ли мои документы в Интуит, предоплата, почему нет зачисления. |
Объекты MS Excel
Свойства
Cвойство Range
Свойство Range возвращает объект Range, определяемый аргументами. Используются два разных способа записи свойства Range.
Первый способ object.Range(Cell1)
Второй способ object.Range(Cell1 [,Cell2])
- object - ссылка на объект, например, на рабочий лист или на интервал ячеек. Ссылка необязательна. По умолчанию используется активный лист;
- Cell1, Cell2 - аргументы для задания интервала ячеек. Cell1 - указание обязательно при обоих способах записи свойства Range.
Первый способ
Аргумент Cell1 задает интервал ячеек произвольного размера.
Важно
- Могут использоваться имена, определенные в таблице, или координаты ячеек, столбцов, строк или интервалов.
- Координаты задаются в стиле A1.
- Координаты и имена заключаются в кавычки.
- При задании интервалов координаты левого верхнего угла и правого нижнего угла интервала разделяются двоеточием.
- Для задания несмежных интервалов используется запятая.
- Для задания пересечения интервалов используется пробел.
Второй способ
Аргументы задают координаты интервала:
- Cell1 - единственная ячейка (строка или столбец), задающая левый верхний угол интервала;
- Cell2 - единственная ячейка (строка или столбец), задающая правый нижний угол интервала. Необязательный аргумент.
Допустимо задание аргументов переменными, выражениями, свойствами или методами, представляющими объект Range - одну ячейку, одну строку или один столбец рабочего листа.
Запись | Возвращаемый объект |
---|---|
Range("A5","D18") | интервал A5:D18 |
Range(Columns(1), Columns(5)) | интервал, содержащий первые пять столбцов рабочего листа |
ЗАПОМНИТЕ
- Если свойство Range применяется к объекту Range, то ссылка на интервал ячеек считается относительной и возвращается смещенный объект Range.
Например, если выделен интервал C1:D5, то запись Selection.Range("B2") возвратит ячейку D2.
Свойство Cells
Свойство Cells возвращает единственную ячейку рабочего листа, которая находится на пересечении строки и столбца, задаваемых целыми числами.
Синтаксис object.Cells (RowIndex,ColumnIndex)
- object - ссылка на объект. Ссылка необязательна. По умолчанию используется активный лист;
- RowIndex - индекс строки;
- ColumnIndex - индекс столбца.
ЗАМЕЧАНИЯ
- В свойстве Cells индекс строки является первым аргументом, а индекс столбца - вторым аргументом, тогда как при задании адреса ячейки в стиле A1 сначала указывается столбец, а затем строка.
- Понятие "индекс" ( Index, ColumnIndex, RowIndex ) всегда подразумевает целое число, целочисленную переменную или выражение, результат вычисления которого есть целое число или может быть преобразован в целое число.
Свойство Offset
Свойство Offset позволяет задавать ячейки или интервалы при помощи числа строк и колонок, которые отделяют нужную ячейку от исходной ячейки, т.е. указывая смещение относительно выбранной ячейки. Например, Range("A5").Offset(-2,1) возвращает ячейку B3.
Синтаксис object.Offset([RowOffset][,ColumnOffset])
- object - ссылка на объект Range. Ссылка обязательна и определяет объект, относительно которого задается смещение;
- RowOffset - смещение строки искомой ячейки относительно исходной ячейки;
- ColumnOffset - смещение столбца искомой ячейки относительно исходной ячейки.
Необязательные аргументы RowOffset и ColumnOffset - числовые выражения. Если какой-то аргумент не задан, то соответствующее смещение равно нулю.
Например, если выделен интервал C1:D5, то запись Selection.Offset(2,1).Select выделяет интервал D3:E7.
Метод Union и свойство Areas
Метод Union используется для объединения двух и более объектов Range, заданных ссылками на непересекающиеся интервалы, в один объект Range.
Синтаксис Object.Union (arg1,arg2,...)
- object - всегда объект Application. Ссылка необязательна;
- arg1,arg2 - интервалы ячеек. Количество аргументов произвольно. Обязательно наличие хотя бы двух аргументов.
Например, оператор Union(Range("A1:C5"),Range("B10:D12")).Select выделяет несмежные интервалы A1:C5 и B10:D12.
Свойство Areas выполняет обратное действие, разделяя объединенные интервалы на несколько объектов Range.
Синтаксис Object.Areas(index)
- object - ссылка на объект Range, состоящий из нескольких интервалов;
- index - номер интервала в объекте. Аргумент необязателен.
Свойства Column и Row (R/O Integer)
Свойства возвращают целое число, показывающее индекс первого столбца или первой строки соответственно для заданного объекта. Синтаксис свойств
object.Column object Row
- object - обязательная ссылка на объект Range.
Например, запись Range("C5").Column возвращает число 3, а запись Range("C5").Row возвращает число 5.
Свойства Columns и Rows
Свойство Columns (не путайте со свойством Column!) возвращает объект Range, представляющий колонку или коллекцию колонок в объекте, к которому это свойство было применено.
Синтаксис Object.Columns(index)
- object - ссылка на объект. Указание необязательно, по умолчанию используется активный рабочий лист;
- index - индекс колонки в объекте.
Например, запись Columns(1) возвращает колонку A активного рабочего листа, а запись Range("C1:D5").Columns(1) возвращает колонку C заданного интервала, а именно, ячейки C1:C5.
Важно
- Если не указан индекс колонки, то возвращаются все колонки объекта в виде объекта Range.
- Индекс колонки можно указывать числом или буквой, при этом буква заключается в кавычки. Ссылки Columns(2) и Columns("B") указывают на одну и ту же колонку B.
Свойство Rows (не путайте со свойством Row!) возвращает объект Range, представляющий строку или коллекцию строк в объекте, к которому это свойство было применено.
Синтаксис Object.Rows(index)
- object - ссылка на объект. Указание необязательно, по умолчанию используется активный рабочий лист;
- index - индекс строки в объекте.
Важно
- Если не указан номер строки, то возвращаются все строки объекта в виде объекта Range.
Например, оператор nr=Selection.Rows(Selection.Rows.Count).Row позволяет получить номер последней строки в выделенном интервале ячеек.
Свойство CurrentRegion
Свойство CurrentRegion определяет объект Range, который соответствует интервалу ячеек, включающему заданную ячейку.
Пример
В процедуре сравниваются значения первой ячейки первой строки и первой ячейки каждой следующей строки заполненного данными интервала, включающего первую ячейку. Если значения совпадают, то очередная строка удаляется.
Предполагается, что данные начинаются с ячейки A1 и занимают несколько строк и столбцов, при этом расположены не плотно, т.е. внутри интервала с данными могут находиться пустые строки или пустые столбцы. Анализируются только строки заполненного данными интервала ячеек вокруг ячейки A1, не содержащего пустых строк и столбцов.
Замечание
- Свойства Width и Height имеют статус Read-Only для объектов Range, но для других объектов, например, для объекта Window, они имеют статус Read-Write.
Методы
Методы Select и Activate
Метод Select выделяет интервал ячеек.
Синтаксис object.Select(Replace)
- object - выделяемый объект типа Range. Ссылка на объект обязательна;
- Replace - для расширения выделения аргумент устанавливается в False. Если аргумент не задан или принимает значение True, то вместо старой области выделения создается новая область выделения. Необязательный параметр.
Метод Activate активизирует единственную ячейку.
Синтаксис object.Activate
- object - активизируемая ячейка. Ссылка на объект обязательна.
Оператор | Активная ячейка |
---|---|
Range("C7:E9").Select | C7 |
Range("C7:E9").Offset(1,1).Activate | D8 |
Range("C7:E9").Activate | C7 |
Range("C7:E9").Cells(2,1).Activate | C8 |
ЗАМЕЧАНИЯ
- Активная ячейка выделяется фоном среди всех выделенных ячеек.
- Метод Select выделяет интервал ячеек, тогда как метод Activate активизирует только одну ячейку.
- При использовании метода Select первая ячейка интервала становится активной.
- Если выделена только одна ячейка, то она является активной и свойства ActiveCell и Selection возвращают одну и ту же ячейку (объект Range ).
Метод Clear
Очищает интервал ячеек, изменяя, таким образом, свойство Value каждой ячейки интервала.
Пример
Процедура очищает интервал ячеек или заполняет его единицами в зависимости от значений ячеек. Дополнительно изменяется шрифт и размер шрифта.
Название шрифта является обязательным параметром вызываемой процедуры, а размер шрифта - необязательным параметром. Если он не задан, то размер шрифта принудительно меняется на 16.
Вызывающая процедура проверяет, является ли интервал ячеек A1:B5 пустым. Если это не так, то интервал очищается и размер шрифта устанавливается в 16. Если же интервал ячеек пуст, то все ячейки интервала заполняются единицами и размер шрифта интервала ячеек равен 10.
В обоих случаях шрифт ячеек интервала A1:B5 устанавливается в Times New Roman.
Цветовое оформление объекта Range
Свойство ColorIndex
Свойство ColorIndex заливки (заливка - это объект Interior, который является вложенным для объекта Range ) рассматривает цвет как номер в палитре цветов рабочей книги. Всего в палитре 56 цветов.
Пример
В ячейках, начиная с активной, отображается палитра цветов рабочей книги.
Переменные c и r содержат, соответственно, индекс столбца и индекс строки активной ячейки.
Прямоугольный интервал из 56 ячеек (7 строк и 8 столбцов, начиная с активной ячейки) для отображения палитры задается переменной obj_range, содержащей ссылку на объект Range.
Свойство Pattern (образец заливки) задается константой xlSolid, позволяющей установить заливку активных ячеек.
Свойство Color
Свойство относится к объектам Border, Font или Interior (вложенные объекты для объекта Range ) и устанавливает цвет объекта в формате RGB. Свойство можно задать, используя функцию RGB, которая возвращает цвет в виде числа типа Long. Аргументы функции Red, Green, Blue определяют насыщенность соответствующей компоненты в устанавливаемом цвете и изменяются от 0 до 255.
Например, оператор ActiveCell.Interior.Color=RGB(255, 0, 0) устанавливает красную заливку активной ячейки.
Замечание
Чтобы использовать серый цвет разной интенсивности, установите равные аргументы функции RGB, например, выражение RGB(196,196,196) устанавливает 25% серую заливку. Чем больше значения аргументов, тем ближе серый цвет к белому.