В даній статті ми будемо вчитися писати VBA код, щоби керувати вмістом комірок, самими комірками та листами.
Властивість (Property) — це атрибут об’єкта, який визначає одну з характеристик об’єкта, наприклад розмір, колір або розташування на екрані, або аспект його поведінки, наприклад, чи він увімкнений або видимий на екрані.
Щоб змінити характеристики об’єкта, потрібно змінити значення його властивостей.
Для початку відкриємо редактор, добавимо модуль, скопіюємо туди цей макрос:
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
Видалимо значення 35 з комірки A1, яке ми записали на початку уроку:
Sub properties() 'moonexcel.com.ua Range("A1").Clear 'Означає: вибрати комірку A1 та очистити її End Sub
Якщо ви виберете значення 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