Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Информатика.Учебное пособие - КузГТУ.pdf
Скачиваний:
305
Добавлен:
10.05.2015
Размер:
6 Мб
Скачать
☆

Sub Открыто1() Worksheets(“Лист4”).Visible=True

End Sub

UsedRange – возвращает диапазон, то есть объект Range, содержащий данные.

Пример:

Worksheets(1).UsedRange.Clear ‘Очищается диапазон первого рабочего листа с данными

5.4.4.2.2. Методы

Метод Activate позволяет активизировать рабочий лист.

С помощью метода Evaluate выражения преобразуются в объекты или в значения.

Пример:

Sub Ввод_формул()

Dim Значение As Single Dim Fx As String

Ячейка InputBox(“Введите имя ячейки”) ‘Ввод адреса ячейки в диалоговом окне ЗначениеEvaluate(Ячейка)

Value ‘Считывание значения из ячейки

MsgBox Cstr(Ячейка)&”=”&CSng(Значение) ‘Вывод значения в диалоговое окно Fx=InputBox(“Введите формулу (функцию)”)

‘Ввод функции в диалоговом окне ЗначениеEvaluate(Fx) ‘Вычисление значения

функции

MsgBox CStr (Ячейка)&”=”&CSng(Значение) ‘Вывод значения в диалоговом окне

End Sub

5.4.4.3.Объект Range

Виерархии MS Excel объект Range (диапазон) идет сразу после объекта Worksheet и является одним из ключевых объектов VBA. Он не входит в состав никакого семейства объектов.

Объект Range описывает диапазон ячеек рабочего листа. При

работе с ним имеются три способа записи ссылок (табл. 5.14) на

249

ячейки рабочего листа: относительная адресация (начало координат, задающее нумерацию строк и столбцов, связывается с объектом, вызвавшим Range), абсолютная и смешанная адресация.

 

 

 

Таблица 5.14

Стили

 

Способы записи адресов ячеек

ссылок

 

 

 

 

A1

Имя ячейки состоит из имени столбца (их 256 – от A

до IV) и номера строки (от 1 до 65536). Пример: A1,

 

C2 – относительный адрес

 

R1C1

Ссылка задается индексом строки и индексом столб-

ца. Пример: R1C1, R2C2, R1C3 – абсолютный адрес

 

Признаком абсолютной адресации является символ

A1

«$», предшествующий номеру строки (A$12 – сме-

шанный адрес), имени столбца ($A12 – смешанный

 

 

адрес), тому и другому ($A$12 – абсолютный адрес)

 

Можно указать смещение по отношению к активной

R1C1

ячейке.

Смещение

приводится

в квадратных скобках, причем знак указывает на на-

 

правление смещения. Пример: R2C3 R[1]C[-1]

 

R3C2

 

 

Записанный в таком виде адрес ячейки рабочего листа является лишь частью полного адреса, который в общем случае включает имя рабочего листа и имя файла рабочей книги. При задании полного адреса за именем листа следует знак «!», а имя файла рабочей книги заключается в квадратные скобки.

Примеры:

A1 – относительная ссылка на ячейку A1 активного рабочего листа. Лист2!A1 – относительная ссылка на ячейку A1 рабочего листа Лист2 активной книги.

[ВсепроВсе.xls]Лист2!A1 – относительная ссылка на ячейку A1 рабочего листа Лист2 книги ВсепроВсе.xls текущего рабочего каталога.

Если в диапазоне указываются только имена столбцов или строк, то объект Range задает диапазон, состоящий из указанных столбцов или строк.

Примеры:

Range(“A:C”) – задает диапазон столбцов A, B, C.

250

Range(“2:4”) – задает диапазон строк 2, 3, 4.

Так как ячейка является частным случаем диапазона, то объект Range позволяет также работать и с ней. Альтернативным способом работы с ячейкой является объект Cells (ячейки).

Пример:

Range(“A2”) или Cells(1,2) – ячейка A2 описывается как объект. В свою очередь объект Cells, вкладываясь в Range, также позволяет записывать диапазон в альтернативном виде:

Range(“A2:C3”) или Range(Cells(1,2),Cells(3,3)).

5.4.4.3.1. Свойства

Свойство Formula позволяет установить формулу в ячейке. Формула задается в виде строки.

FormulaArray – устанавливает формулу массива ячеек. Формула задается в виде строки. В качестве ссылок на ячейки используется стиль A1. Формула массива – это формула, которая в качестве исходных данных использует диапазон ячеек и возвращает одно или несколько значений.

Пример:

Sub Prima1()

With Worksheets(“Лист1”) For i = 1 To 3

For j = 1 To 3

Cells(i,j) = Int(Rnd(i*j)*100) Next j

Next i

Range(“D1:F3”).FormulaArray=”=MINVERSE(A1:C3)”

End With End Sub

FormulaR1C1 – устанавливает формулу в ячейке. Формула задается в строковом виде стилем ссылок R1C1.

Пример:

Sub Prima1()

With Worksheets(“Лист1”) For i = 1 To 3

For j = 1 To 3

Cells(i,j) = Int(Rnd(i*j)*100) Next j

251

Next i

Range(“D1:F3”).FormulaR1C1=”=MINVERSE(R1C1:R3C3)”

End With End Sub

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

Свойство HasFormula возвращает значение True, если в указанной ячейке содержится формула.

Примеры:

MsgBox Worksheets(1).Range(“A2”).HasArray – выво-

димое значение True или False

MsgBox Worksheets(1).Range(“A3”).HasFormula – вы-

водимое значение True или False

Свойство Text возвращает содержимое ячейки в виде строки. Используется только для чтения.

Пример:

MsgBox Worksheets(1).Range(“A2”).Text

Свойство Value возвращает значение из ячейки или устанавливает значение в ячейку (в ячейки).

Примеры:

x=Range(“C1”).Value – значение из ячейки C1 присваивается переменной x

Range(“A1:B4”).Value=12 – в диапазон ячеек A1:B4 устанав-

ливается число 12

Инструкция With используется для указания текущего объекта. Внутри ее можно указывать, начиная с точки, только свойства и методы при обращении к текущему объекту.

Синтаксис:

With <объект>

.<свойства и методы> End With

Пример:

Sub qwe()

Dim a As Single

Dim b As Single

With Worksheets(“Лист1”) a=.Range(“A1”).Value

252