В данной статье мы будем учиться писать 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