Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
VB_1 Mетодичка-Exel_укр_2.doc
Скачиваний:
3
Добавлен:
17.09.2019
Размер:
1.43 Mб
Скачать

15.Функції дати і часу

Функції дати і часу забезпечують перетворення з текстового формату дати або часу в послідовний номер дати (або послідовний номер часу, якщо цей номер включає лише час). Послідовний номер дати зберігає дату і час в одному числі з плаваючою крапкою. Дата зберігається у вигляді номера дня, починаючи від 01.01.1900, а час – у вигляді дробової частини дня. Таким чином 0.5 – полудень, а 0.75 – 18:00. Якщо ви рахуєте два послідовні номери дати, то отримуєте кількість днів між цими двома датами. Функції дати і часу приведені в Таблиці 7.

Таблиця 7.

Функція

Опис

Date()

Встановлює або повертає поточну дату

Time()

Встановлює або повертає поточний час

Now()

Повертає поточну дату і час

DateSerial(х)

Перетворює х до вигляду: рік-місяць-день

DateValue(х)

Символьне представлення дати х

TimeSerial(у)

Перетворює у до вигляду: годинник-хвилини-секунди

TimeValue(у)

Символьне представлення часу у

Timer(х)

Повертає часовий інтервал від півночі

Day(х)

Перетворює послідовну дату х в день місяця

Month(х)

Перетворює послідовну дату х в місяць року

Weekday(х)

Перетворює послідовну дату х в день тижня

Year(х)

Перетворює послідовну дату х в рік

Hour(у)

Перетворює послідовну дату у в години дня

Minute(у)

Перетворює послідовну дату у в хвилини в годиннику

Second(у)

Перетворює послідовну дату у в секунди в хвилинах

Де зміні х та у типу Date, але х встановлює дату, а у – час.

Контрольні завдання по темі

1. Теоретичні питання

2. Тести

3. Практичні завдання

Доступ до об'єктів Excel з VBА

16.Об'єкти в мові VBА

Об'єкт – це те, чим можна управляти за допомогою програми на мові VBА, наприклад, кнопка, аркуш, книга, діаграма, елемент таблиці і так далі.

Кожен об'єкт володіє деякими характеристиками або властивостями. Наприклад, діалог може бути видимим або невидимим в даний момент на екрані. Змінюючи властивості, можна змінити характеристики об'єкту.

Об'єкти також мають методи. Методи – це те, що можна робити з об'єктами.

16.1.Методи об'єктів

Методи – це команди, за допомогою яких відбувається деяке перетворення об'єктів.

Синтаксис виклику методу об'єкту повинен мати вигляд:

Об'єкт.Метод[аргументи]

У квадратних дужках знаходиться необов'язковий елемент програмного коду, тобто аргумент.

Приклад: Range(“B3:F5”).Select – вибирається діапазон клітин B3:F5

Range(“Результати”).Table Cells(4,4) Cells(8,7) – тут створюється таблиця даних з ім'ям Результати, а аргументи вказують на початкове і кінцеві клітини (таблиці).

16.2. Контейнери і набори об'єктів

Excel складається з безлічі об'єктів: книг, листів, листів з діаграмами і т.д, причому деякі з цих об'єктів містять інші об'єкти. Наприклад, книга містить листи, листи містять рядки і стовпці .

Об'єкт самого високого рівня – Application. Для вказівки потрібного об'єкту в контейнері, необхідно вказати його ім'я після крапки, яка слідує за ім'ям об'єкту, – контейнера.

Наприклад:

Вooks(“Р_00_51”).Sheets(«1»).Delete,

де books(“Р_00_51”) – контейнер (книга з іменем “Р_00_51”) , Sheets(«1») – об'єкт (лист з іменем «1»), Delete – метод, тобто відбувається видалення листа «1» в книзі Р_00_51.

Application.Workbook(“Р_00_51”).Close,

відкрити у додатку робочу книгу Р_00_51.

Набор об'єктів – це контейнер для всіх об'єктів певного класу.

Workbook або books – об'єднує всі поточні відкриті робочі папки (книги).

WorkSheet – об'єднує всі листи у відкритих робочих папках (книгах).

Sheets – об'єднує всі сторінки будь-яких типів в робочій книзі.

Charts – об'єднує всі сторінки діаграм в робочій книзі.

Об'єкт Range – ячейка/діапазон елементів таблиці.

Приклад запису:

Workbook(“ім'я книги”).Sheets(“ім'я листа”)

Sheets(“ім'я листа”).Range(“ім'я клетини/області”)

16.3. Об'єкт Range

Під об'єктом Range розглядаються:

  • одна клітина;

  • діапазон суміжних клітин (стовпчик/рядок, діапазон стовпчиків/рядків, набір суміжних клітин);

  • набір не суміжних клітин.

Існує декілька методів, що дозволяють описувати об'єкт Range: Union; Range; Cells; Offset.

Метод Range – використовується для опису об'єкту Range, що може бути одна клітина, діапазон суміжних клітин (стовпчик/рядок, діапазон стовпчиків/рядків, набір суміжних клітин)

  • найбільш поширений метод, використовує, як аргументи одну або два посилання на клітину і повертає об'єкт Range (посилання на стовпець-буква /рядок-число): Range(«посилання на об’єкт»).Метод

Приклад методу Range:

  1. Sheets (“Лист1”).Range(“B2”).Value = 1

результат: на аркуші з ім'ям Лист1 клітка В1 набуває значення рівне 1.

  1. Sheets (“Лист1”).Range(“A4”,”C6”).Value = 2

результат: на аркуші з ім'ям Лист1 діапазон кліток А4:С6 набуває значення рівне 2.

  1. WorkSheets (“Лист1”).Range(“B7:C9”).Value = 3

результат: на аркуші з ім'ям Лист1 діапазон кліток В7:С9 набуває значення рівне 3.

Метод Cells – використовується для опису об'єкту Range, що є одною клітиною.

  • отримуючи як аргументи два цілі числа, повертає об'єкт Range, що містить одиничну клітину: Cells(n,m).Метод, де аргументи: n - номери рядка і m - колонки вибраної клітини або ім’я стовпчика.

Цей метод найбільш зручний для вибору групи клітин по одній – змінюючи значення аргументу (в циклах, де номер рядка/стовпчика потрібно змінювати).

Приклад:

  1. Sheets (“Лист1”).Cells(1,2).Value = 1

результат: на аркуші з ім'ям Лист1 клітка В1 набуває значення рівне 1.

  1. Sheets (“Лист1”).Cells(1,“D”).Value = 2

результат: на аркуші з ім'ям Лист1 клітка D1 набуває значення рівне 2.

  1. For I = 1 To 10

Sheets (“Таблиця”).Cells(I+5, 2).Value = I

NEXT I

результат: на аркуші з ім'ям Таблиця клітка В6 набуває значення рівне 1, потім I зростає на 1, тому клітка В7 набуває значення рівне 2, потім знову I зростає на 1, тому клітка В8 набуває значення рівне 3, і так далі до значення I =10, тому до клітки В15, яка набуває значення рівне 10.

Метод OffSet – – використовується для опису об'єкту Range, що може бути одна клітина, діапазон суміжних клітин (стовпчик/рядок, діапазон стовпчиків/рядків, набір суміжних клітин)

  • синтаксис аналогічний Cells, але об'єкт Range завжди задається відносно верхнього лівого кута поточного. Метод Offset найчастіше застосовується для створення об'єкту Range відносно поточного активного об'єкту Range таблиці. У методі Offset використовується два аргументи: Offset (n,m).Метод, де n - індекс рядка і m - індекс колонки, які є зміщенням відносно поточного об'єкту Range.

Індекси змінюються від 0 до n для методу Offset, а для методу Cells – від 1 до n.

Наприклад:

Sheets (“Ліст1”).Range(“A1:B10”). Offset(3,4) - посилання на клітини E4:F13

Sheets (“Ліст1”).Range(“A1”).Offset(2,3) - посилання на клітину D3

Для створення об'єктів Range відносно деяких об'єктів Range краще використовувати метод Offset, це робить програму однозначнішою.

Метод Union – використовується для об'єднання розрізнених груп клітин в один об'єкт Range (набір не суміжних клітин, об'єктів Range)

.

Union (Sheets (“Лист1”).Range(“D1:F2”), Sheets (“Лист1”).Range(“E7:G9”)).Value = 43

результат: на аркуші з ім'ям Лист1 діапазон кліток D1:F2 E7:G9 набуває значення рівне 43.

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