В данной статье мы будем учиться писать VBA код, чтобы управлять содержимым ячеек, самими ячейками и листами.
Для начала откроем редактор, добавим модуль, скопируем туда этот макрос:
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