Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Lab_1.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
698.88 Кб
Скачать

Часть 2

2. Ссылки в программах vba на ячейки рабочих листов Excel.

Следующие средства VBA используются для ссылок на ячейки рабочих листов Excel:

 Свойство Cells позволяет выбрать одну или все ячейки рабочего листа.

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

 Свойство ActiveCell возвращает активную ячейку активного окна.

 Свойство Selection возвращает выделенный объект активного окна.

 Свойство Columns и Rows возвращают столбец или строку рабочего листа или диапазона ячеек.

Некоторым неудобством использования cвойства Range является то, что оно требует указания имени ячейки, на которую требуется сослаться. То есть в случае, когда имя точно не известно и требуется использование переменной вместо имени ячейки этот метод не очень подходит. В этом случае предпочтительнее свойство Cells. Существует две особенности использования этого свойства.

 Во-первых, вместо символа для указания строки или столбца может использоваться число или численное выражение, а, следовательно, и переменная.

 Во-вторых, в списке параметров этого свойства на первом месте стоит строка, а на второй столбец.

В соответствии с этим ссылка, например, на ячейку В7 будет выглядеть, как Cells(7,2), хотя доступна и ссылка вида Cells(7,"B").

Задание 1.

Откройте окно редактора VBA.

В проект вставьте Модуль (команда InsertModule)

В модуле разместите процедуру для воспроизведения таблицы умножения.

Для создания процедуры выполните команду InsertProcedure, в диалоговом окне введите имя и далее после закрытия диалогового окна введите текст процедуры.

В этой программе rws и cols - числовые переменные, которые в процесс выполнения макроса принимают значения от 1 до 10.

Cells(rws,cols) - объект типа ячейка, который определяет ячейку активного рабочего, находящуюся на пересечении строки с номером rws и столбца с номером cols.

Value - свойство объекта Cells, определяющее значение, хранимое в конкретной ячейке. В процессе работы процедуры свойству Value каждой Ячейки присваивается результат вычисления арифметического выражения rws*cols.

Задание 2.

Копируйте текст ранее созданной процедуры.

Вставьте скопированный текст в модуле ниже созданной ранее процедуры. Измените имя вновь создаваемой процедуры (MultiplyTable_1)

Дополните процедуру до вида, приведенного ниже, (дополнительные строки выделены синим шрифтом) и запустите ее на выполнение:

Sub MultiplyTable_1()     'очистка содержимого диапазона клеток "A1:J10"     Range(Cells(1, 1), Cells(10, 10)).Clear

'формирование нижней границы первой строки и правой границы ‘первого столбца     Range(Cells(1, 1), _ Cells(1,10)).Borders(xlEdgeBottom).LineStyle = xlContinuous _     Range(Cells(1, 1), _ Cells(10,1)).Borders(xlEdgeRight).LineStyle = xlContinuous End Sub

Указание к заданию 2. При выполнение данного задания минимизируйте окна Microsoft Excel и Microsoft Visual Basic так, чтобы на экране дисплея отчетливо было видно два окна: левая верхняя часть рабочей книги Excel и полный текст макроса в окне редактора VBA. После этого установите курсор в тело макроса и выберите Debug -> Step Info. У Вас должна появиться желтая засветка в первой строке макроса. Последовательно нажимая клавишу F8, Вы обеспечите пошаговое выполнение макроса. Следите за изменения, происходящими на рабочем лист Excel. По окончанию работы процедуры повторите еепошаговое выполнение еще раз.

В этом задании для ссылки на диапозон ячеек рабочего листа использовано свойство Range в конструкции:

Range( <верхняя левая ячейка> , <нижняя правая ячейка> )

Кроме этого Range может возвращать несмежные ячейки или диапазоны. Например, его можно использовать:

'для выделения 4-х ячеек: Range("a1,b2,c1,d2").Select 'для выделения двух диапазонов ячеек (с назначением им жирного шрифта и подчёркивания) Range("A2:C4, D8:F10").Select Selection.Font.Bold=True Selection.Font.Underline=x1Double

Свойства Rows и Columns выбирают, соответственно, целую строку или диапазон строк и целый столбец или диапазон столбцов. Например: Rows(4) - указывает на четвертую строку рабочей книги, Rows("2:4") - на три строки со второй по четвертую, Columns(2), Columns("B") и Columns("B:B") - на второй столбец текущей рабочей книги. Из примеров видно, что аргументами этих свойств могут быть, как числовые, так и символьные данные.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]