VBA-Урок 5. Властивості (Properties)

В даній статті ми будемо вчитися писати VBA код, щоби керувати вмістом комірок, самими комірками та листами.

1. Запис значень в комірку

Для початку відкриємо редактор, добавимо модуль, скопіюємо туди цей макрос:

Sub Properties() 'moonexcel.com.ua
   Range ("A1")
End Sub

Ми звернулися до комірки A1. Тепер давайте спробуємо керувати даною коміркою. Щоби побачити, що ми можемо зробити, додамо крапку після Range ("A1").

Виберіть значення Value та натисніть Tab. Отримаємо такий код:

Sub Properties() 'moonexcel.com.ua
        Range ("A1").Value
End Sub

Значення Value відображає вміст комірки.

Тепер давайте запишемо значення 35 в комірку A1:

Sub properties() 'moonexcel.com.ua
   Range("A1").Value = 35
   'Значення комірки A1 дорівнює 35
End Sub

Спробуємо тепер записати текст в комірку (коли присвоюємо текстове значення, його потрібно брати в подвійні лапки ""):

Sub properties() 'moonexcel.com.ua
   Range("A1").Value = "Тут є якийсь текст"
End Sub

Зауважимо, що макрос буде відображати значення в тому аркуші, який ви останній раз відкривали. Тому, щоби керувати вмістом комірки на будь-якому аркуші книги, нам потрібно буде прописати повний шлях до комірки, а саме добавити спереду коду назву листа, наприклад:

Варіант 1. Звертаємось по назві листа - Sheets("Sheet2").

Sub properties() 'moonexcel.com.ua
   Sheets("Sheet2").Range("A1").Value = "Тут є якийсь текст"
   'Означає: відкрити лист 2, вибрати комірку A1 та в її значення записати текст
End Sub

Варіант 2. Звертаємось не по назві листа, а по його порядковому номеру - Sheets(2).

Sub properties() 'moonexcel.com.ua
   Sheets(2).Range("A1").Value = "Тут є якийсь текст"
End Sub

Аналогічно, якщо ми хочемо звернутися до комірки в іншій книзі, нам потрібно на початоку коду прописати назву книги:

Sub properties() 'moonexcel.com.ua
   Workbooks("Book2.xlsx").Sheets("Sheet2").Range("A1").Value = "Тут є якийсь текст"
End Sub

Хоча ми зазначаємо параметр Value в наших прикладах, насправді його можна не використовувати, оскільки він стоїть по замовчуванню. Тобто, ці два рядки коду будуть еквівалентними:

Sub properties() 'moonexcel.com.ua
   Range("A1").Value = 35
   Range("A1") = 35
End Sub

2. Видалення значень

Видалимо значення 35 з комірки A1, яке ми записали на початку уроку:

Sub properties() 'moonexcel.com.ua
   Range("A1").Clear
   'Означає: вибрати комірку A1 та очистити її
End Sub

3. Форматування значень

Якщо ви виберете значення Font, то з'явиться перелік властивостей, які ви зможете застосувати до комірки:

Форматування: зміна розміру тексту

Давайте присвоїмо комірці значення 35 та зменшимо розмір шрифта до 8:

Sub properties() 'moonexcel.com.ua
   Range("A1") = 35
   Range("A1").Font.Size = 8
End Sub

Форматування: зробити текст жирним

Sub properties() 'moonexcel.com.ua
   Range("A1").Font.Bold = True
End Sub

Забрати виділення жирним:

Sub properties() 'moonexcel.com.ua
   Range("A1").Font.Bold = False
End Sub

Форматування: зробити текст похилим

Sub properties() 'moonexcel.com.ua
   Range("A1").Font.Italic = True
End Sub

Форматування: підкреслити текст

Sub properties() 'moonexcel.com.ua
   Range("A1").Font.Underline = True
End Sub

Форматування: встановити тип шрифту

Sub properties() 'moonexcel.com.ua
   Range("A1").Font.Name = "Arial"
End Sub

Форматування: зафарбувати комірку

Sub properties() 'moonexcel.com.ua
   Range("A1").Interior.ColorIndex = 6
End Sub

Статті по темі:

  • VBA-Урок 4. Робота з діапазонами (Range)
  • VBA-Урок 6.1. Типи даних (Variables)