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

15.3.8. Interior - внешний вид ячейки

Позволяет управлять внешним видом ячейки. В частности, настраивать ее цвет.

Например, такой код (листинг 15.23.) позволяет окрасить ячейку A1 в красный цвет

Range("A1").Interior.Color = vbRed

Листинг 15.23. Окраска ячейки в красный цвет (htmltxt)

15.3.9. Name - работа с именованными диапазонами

15-11-Range Name.xlsm - пример к п. 15.3.9.

Позволяет узнать или установить имя ячейки или диапазона ячеек. Имена организованы в коллекцию Names. Именами удобно пользоваться для автоматического заполнения каких-либо заранее созданных таблиц.

Рассмотрим пример. Создадим на рабочем листе MS Excel таблицу такого вида (табл. 15.1.)

Таблица 15.1. Структура таблицы на листе MS Excel

Имя

(сюда будет введено имя)

Возраст

(сюда будет введен возраст)

Дадим ячейкам, в которые должны быть введены имя и возраст, имена - cell_Name и cell_Age.

Для задания имени щелкните правой кнопкой мыши по ячейке и выберите в появившемся меню команду Имя диапазона (рис. 15.4.)

Рис. 15.4.  Задаем имя ячейке

Заполните поле Имя, здесь же можно выбрать область видимости имени, ввести примечание и отредактировать, при необходимости, диапазон, для которого назначается имя.

Также для присвоения имени ячейке или диапазону вы можете воспользоваться полем, расположенным слева от строки формулы - в этом поле отображается имя активной ячейки. Просто впишите туда нужное имя.

Теперь добавим на лист кнопку и присвоим ее обработчику Click такой код (листинг 15.24.).

'Переменная для работы с ячейкой

Dim obj_Range As Range

'Переменная для адреса ячейки

Dim str_Name As String

'Так как имя ячейки возвращается

'в виде =лист1$A$1 мы вырезаем из

'переданного значения все, кроме знака =

str_Name = Mid( _

ActiveWorkbook.Names("cell_Name"), _

2, Len(ActiveWorkbook.Names("cell_Name")) - 1)

'Вводим в ячейку данные

Range(str_Name).Value = _

InputBox("Введите имя")

str_Name = Mid( _

ActiveWorkbook.Names("cell_Age"), _

2, Len(ActiveWorkbook.Names("cell_Age")) - 1)

Range(str_Name).Value = _

Val(InputBox("Введите возраст"))

Листинг 15.24. Работа с именованными ячейками (htmltxt)

Здесь мы используем коллекцию Names объекта ActiveWorkbook, чтобы обратиться к конкретной ячейке. Здесь мы задавали имена ячеек вручную, но используя свойство Name можно задавать их в автоматическом режиме. Например, для присвоения ячейке A1 имени cell_A, надо выполнить такой код (листинг 15.25.)

Range("A1").Name = "cell_A"

Листинг 15.25. Программная установка имени ячейки (htmltxt)

По такой же схеме осуществляется работа с именованными диапазонами ячеек.

15.3.10. Value - содержимое ячейки

15-12-Range Value.xlsm - пример к п. 15.3.10.

Позволяет узнать или установить содержимое ячейки. Того же эффекта можно добиться, если обращаться к ячейке без указания каких-либо свойств.

Рассмотрим пример - здесь мы получаем с помощью свойства Value значение, хранящееся в ячейке, если оно меньше 0 - записываем в ячейку модуль хранящегося в ней числа и меняем цвет ячейки на vbCyan (голубой) (листинг 15.25.)

Dim obj_Cell As Range

For Each obj_Cell In ActiveSheet.Range("A1:E8")

If obj_Cell.Value < 0 Then

obj_Cell.Value = Abs(obj_Cell.Value)

obj_Cell.Interior.Color = vbCyan

End If

Next