якщо адреса активної чарунки не відомий:
ActiveCell.ClearContents
У наступному прикладі відображається повідомлення, що вказує ім'я активного листа:
MsgBox ActiveSheet.Name
Якщо потрібно дізнатися назву активної робочої книги, використовуйте такий оператор
MsgBox ActiveBook.Name
Якщо на робочому аркуші виділено діапазон, то заповніть цей діапазон одним значенням, виконавши єдиний оператор. У наступному прикладі властивість S electi on об'єкта Application повертає об'єкт Range, відповідний виділеним осередкам. Оператор змінює властивість Value цього об'єкту Range, і в результаті виходить діапазон, заповнений одним значенням.
Selection.Value = 12
Зверніть увагу: якщо виділено не діапазон комірок (наприклад, об'єкт ChartObject або Shape), то цей оператор видасть помилку, оскільки об'єкти ChartObject і Shape не володіють властивістю Value.
Однак наведений нижче оператор, присвоює об'єкту Range, який виділявся перед виділенням іншого об'єкта (відмінного від діапазону комірок), значення 12. У довідковій системі вказано, що властивість RangeSelection відноситься тільки до об'єкту Window:
ActiveWindow.RangeSelection.Value = 12
Щоб дізнатися, скільки клітинок виділено на робочому листі, застосовується властивість Count: MsgBox ActiveWindow.RangeSelection.Count
В
Робота з об'єктами Range
В основному, робота, яка виконується в VBA, пов'язана з управлінням осередками і і апазоне на робочих аркушах, що і є основним призначенням електронних таблиць.
Об'єкт Range міститься в об'єкті Worksheet і складається з одного осередку або діапазону клітинок на окремому робочому листі. У наступних розділах будуть розглянуті три способи завдання посилання на об'єкти Range в програмі VBА.
• Властивість Range об'єкта класу Worksheet або Range. p> • Властивість Cells об'єкта Worksheet. p> • Властивість Offset об'єкта Range. p align=center>
Властивість Range
Властивість Range повертає об'єкт Range. З довідкових відомостей по властивості Range можна дізнатися, що до даного властивості звертаються за допомогою декількох варіантів синтаксису:
об'єкт . Range (ячейка1);
об'єкт . Range ( ячейка1, ячейка2 ).
Властивість Range відноситься до одного з двох типів об'єктів: об'єкту Worksheet або об'єкта Range. У даному випадку ячейка1 і ячейка2 вказують параметри, які Excel буде сприймати як ідентифікують діапазон (у першому випадку) або окреслюють діапазон (у другому випадку). Нижче слід кілька прикладів використання методу Range. p> Далі наведена інструкція, яка вводить значення в зазначену клітинку: значення 1 вводиться в комірку А1 на аркуші Лист1 активної робочої книги:
Worksheets ("Лист1"). Range ("Al"). Value = 1
Властивість Range також підтримує імена, визначені в робочих книгах. Тому якщо осередок називається Введення, то для введення значення в цей осередок може використовуватися оператор
Worksheets ("Лист1"). Range ("Введення"). Value = +1
У наступному прикладі в діапазон з 20-ти осередків на активній аркуші вводиться однакове значення. Якщо активний аркуш не є робочим листом, то відображається повідомлення про помилку:
ActiveSheet.Range ("A1: B10"). Value = 2
Наведений нижче приклад приведе до того ж результату, що і попередній.
Range ("Al", "B10") = 2
Відмінність полягає лише в тому, що опушена посилання на лист, тому передбачається активний робочий лист. Крім того, пропущено властивість, тому використовується властивість за замовчуванням (для об'єкта Range це властивість Value) . У цьому прикладі використовується другий синтаксис посилання на властивість Range. У даному випадку перший аргумент - це ліва верхня клітинка діапазону, а другий аргумент- его осередок у правому нижньому куті діапазону.
У наступному прикладі для отримання перетину двох діапазонів застосовується оператор перетину Excel ( пробіл ). Перетином є одна клітинка-С6. Отже, даний оператор вводить значення 3 в клітинку С6:
Range ("С1: С10 А6: Е6") = 3
Нарешті, в наступному прикладі значення 4 вводиться в п'ять осередків, тобто в незалежні діапазони. Кома виконує роль оператора об'єднання:
Range ("Al, A3, А5, А7, А9") = 4
До теперішнього моменту у всіх розглянутих прикладах використовувалася властивість Range об'єкта Worksheet. Нижче показаний приклад використання властивості Range об'єкта Range (у даному випадку об'єктом Range є активна комірка). У цьому прикладі об'єкт Range розглядається як ліва верхня клітинка на робочом...