Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекції VBA.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
2.17 Mб
Скачать
  • Count - повертає кількість об'єктів у наборі; у прикладі перемінної k присвоюється значення, рівне числу рядків діапазону a1:d4

k = Range(“A1:D4”). Rows. Count

  • CurrentRegion - повертає поточний діапазон. Поточним є діапазон, обмежений порожніми рядками і стовпчиками, що містить даний елемент. Діапазон повинний бути оформлений як список. Наприклад, оператор

z=Range(“A1”). CurrentRegion. Rows. Count

у перемінну z записує число рядків поточного діапазону.

  • EntireRow, EntireColumn - повертає стовпчик і рядок відповідно. У прикладі обчищається рядок і виділяється стовпчик з активною клітиною:

ActiveCell. EntireRow. Clear

ActiveCell. EntireColumn. Select

  • Formula - задає формулу в клітині; формула задається як рядок символів, записаний по правилах Excel. Наприклад, Range(“D3”). Formula = ”=C3*0,25”

Range(“C10”). Formula = ”=sum(C3:C9)”

Функції, що використовуються у формулах, повинні мати

англійські імена.

  • FormulaR1C1 - задає формулу в клітині, у якій адреси клітин записуються в стилі R1C1, тобто записується буква R, а після неї - номер рядка, потім буква С и після неї - номер стовпчика. Наприклад, R3C2 відповідає клітині B3. Посилання на клітини можуть бути абсолютними і відносними. Відносні записуються в квадратних дужках як зсув щодо клітини, у якій записується формула. Наприклад,

ActiveCell. Value=24 ‘в активну клітину записуємо 24

ActiveCell. Offset(1,0). Value=7 ‘в клітину під активною - число 7

ActiveCell. Offset(2,0). Select ‘активізуємо клітину на 2 нижче

ActiveCell. FormulaR1C1= ” =R[-2]C[0]+R[-1]C[0] ”

Формула в останньому операторі посилається на клітини, розташовані вище, у які записали числа. Як очевидно з приклада, такого роду адресацію клітин у формулі зручно використовувати, коли не відомо точне місце розташування клітин.

  • FormulaLocal - повертає російськомовні формули у форматі А1, тобто при запису таких формул необхідно вказувати російські імена функцій Excel. Наприклад, наступна інструкція вводить в клітину В2 формулу:

Range(“B2”). FormulaLocal = ”=СУММ(C1:C4)”

  • Text - повертає інформацію, що в клітині, в текстовому форматі.

  • Offset(зсув_по_рядку, зсув_по_стовпчику) - повертає діапазон, усунутий щодо даного на розміри, зазначені в аргументах; наприклад,

ActiveCell. Offset(1,0). Select

активізує клітину, розташовану під активною, тобто усунуту на один рядок униз;

  • Font - задає властивості шрифту, яким відображається вміст клітини. Має такі власні властивості:

  • Name - ім'я шрифту; (Arial, Times New Roman, …);

  • Size – розмір шрифту;

  • Bold - може бути True або False у залежності від жирності шрифту;

  • Italic - курсив, якщо властивість встановлена в True;

  • Underline - підкреслення.

Наприклад, змінимо шрифт, розмір та жирність тексту в клітині:

Range(“A1”). Font. Name = ”Arial”

Range(“A1”). Font. Size = 18

Range(“A1”). Font. Bold = True

  • Borders - задає межу, що обмережує клітину або діапазон клітин. Має такі власні властивості:

  • LineStyle - стиль лінії, може приймати значення: xlContinuous (суцільна), xlDouble (подвійна), xlDash (пунктирна);

  • ColorIndex - колір лінії, указується цілим числом від 1 до 49; приведемо деякі кольори:

1 - чорний

2 - білий

3 - червоний

4 - зелений

5 - синій

6 - жовтий

7 - бузковий

8 - блакитний

9 - коричневий

10 - темнозелений

15 - сірий

  • Weight - товщина лінії, може приймати значення: xlThin (тонка), xlMedium (середня), xlThick (товста).

Наприклад, Range(“B2:D14”). Borders. LineStyle = xlDouble

Range(“B2:D14”). Borders. Weight = xlMedium

Проводить межу навколо діапазону B2:D14 подвійною лінією середньої товщини.

Якщо необхідно задати не всі межі, а тільки частину з них або проводити межі різними лініями, то використовують властивість Borders(параметр). Параметр указує, яка межа задається, і може приймати значення: xlEdgeTop (угорі), xlEdgeBottom (знизу), xlEdgeLeft (зліва), xlEdgeRight (справа).

Наприклад, оператори

Range(“B2:D14”). Borders(xlEdgeTop). LineStyle = xlContinuous

Range(“B2:D14”). Borders(xlEdgeBottom). LineStyle = xlDouble

Range(“B2:D14”). Borders(xlEdgeLeft). LineStyle = xlDash

Range(“B2:D14”). Borders(xlEdgeRight). LineStyle = xlDash

Проводять зверху, знизу, зліва і справа зазначеного діапазону різні типи ліній.

Методи

  • Copy - копіює діапазон в інший діапазон або в буфер обміну. Має один аргумент destination , що визначає діапазон, куди копіюється вихідний. Якщо аргумент опущений, діапазон копіюється в буфер. Наприклад, копіюємо діапазон А1:С4 з одного листа на інший:

Worksheets(“Лист1”). Range(“A1:C4”). Copy

Destination := Worksheets(“Лист2”). Range(“E5”)

  • Cut -копіює діапазон із видаленням у зазначений діапазон або буфер обміну. Якщо аргумент destination не зазначений, то діапазон копіюється в буфер обміну.

  • Delete - видаляє діапазон. У даному прикладі видалиться третій рядок активного робочого листа:

Rows(3). Delete

  • Columns, Rows - повертає відповідно сімейства стовпчиків і рядків, із яких складається діапазон. Наприклад, у перемінні i та j записуються кількості стовпчиків і рядків у виділеному діапазоні відповідно:

i=Selection. Columns. Count

j= Selection. Rows. Count

  • Insert - вставка клітини або діапазону клітин відповідно. У прикладі вставляється новий рядок перед четвертим рядком:

Worksheets(“Лист1”). Rows(4). Insert

  • Select - виділяє діапазон. У прикладі активізується клітина, розташована на три рядка нижче і на два стовпчики лівіше щодо попередньої активної клітини:

ActiveCell. Offset(3,2). Select

  • PasteSpecial - спеціальна вставка з буфера обміну. Аргумент Paste визначає ту частину вмісту буфера обміну, що повинна бути вставлена в діапазон. Припустимі значення:

  • XlPasteAll - усе;

  • XlPasteFormulas - формули;

  • XlPasteValues - значення;

  • XlPasteFormats - формати.

У прикладі діапазон А1:Е5 заповнюється цілими випадковими числами від 0 до 200 (в клітинах записані формули), а потім на інший лист копіюються тільки значення з клітин:

Worksheets(“Лист1”).Range(“A1:E5”). Formula = “=int(rand()*200))”

Worksheets(“Лист1”). Range(“A1:E5”). Copy

Worksheets(“Лист2”). Range(“A1:E5”). PasteSpecial _

paste:=xlPasteValues

  • AutoFill - автоматично заповнює клітини діапазону елементами послідовності. Вручну цей метод еквівалентний протягуванню маркера заповнення уздовж діапазону, що заповнюється. Аргументи:

  • Destination - діапазон, що заповнюється. Повинний містити в собі вихідний діапазон із початковими даними;

  • Type - тип заповнення, може приймати одне зі значень: xlFillDefault, xlFillSeries, xlFillCopy, xlFillValues, xlFillDays.

У прикладі клітини В2:В12 заповнюються непарними числами від 1 до 21:

Range(“B2”). Value=1

Range(“B3”). Value=3

Range(“B2:B3”). AutoFill destination:=Range(“B2:B12”)

  • Find - використовується для пошуку клітини, що містить зазначену інформацію. Повертає покажчик на знайдену клітину або значення Nothing, якщо не знайдено. Вручну метод Find визивається через пункти меню Правка, Найти. Аргументи:

  • What - указує, що шукати в діапазоні;

  • After - указується перша клітина, після якої провадиться пошук; якщо аргумент опущений, то пошук провадиться у всьому діапазоні;

  • Lookin - область пошуку; припустимі значення: xlFormulas - формули, xlValues - значення;

  • LookAt - припустимі значення: xlWhole – збіг клітини цілком, xlPart – збіг тільки частини клітини.

У прикладі відшукується й активізується клітина, що містить мінімальне з чисел діапазону:

Range(“E6”). Formula = “=Min(B2:E5)”

Range(“B2:E5”).Find(Range(“E6”).Value, , xlValues, xlWhole).Select

  • Sort - метод здійснює сортування рядків списків і баз даних, а також стовпчиків робочих листів з урахуванням до трьох критеріїв, по яких провадиться сортування. Синтаксис:

Об'єкт. Sort (key1,order1,key2,order2, key3,order3)

Key - посилання на поле, по якому провадиться сортування;

Order - задає порядок сортування. Припустимі значення:

XlAscending - зростаючий порядок; XlDescending - убутний порядок;

Наприклад, діапазон А1:С20 робочого листа Лист1 сортується в порядку зростання так, що початкове сортування відбувається по першому стовпчику цього діапазону, а другорядне - по другому:

Range(“A1:C20”). Sort key1:=Range(“A1”), key2:=Range(“B1”)

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