VBA-Урок 3. Колекція Sheets

Дана колекція представляє собою набір аркушів (Sheets) у книзі (Workbooks). Давайте подивимось, які дії ми можемо робити над аркушами.

Як порахувати кількість аркушів в книзі

Спочатку спробуємо взнати скільки аркушів має наша книга:

Sub Test() 'moonexcel.com.ua
	MsgBox (Str(Application.Workbooks.Item("Test.xls").Sheets.Count))
End Sub

Даним кодом ми визвали повідомлення на екран (MsgBox), яке відобразило кількість аркушів (Sheets.Count) в книзі (Workbooks) "Test.xls".

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

Як додати аркуш в книгу

В колекції аркушів також є можливість добавляти свої листи, для цього існує метод Add. Цей метод має 4 параметри Add(Before, After, Count, Type). Всі ці параметри необов'язкові. Перші два відповідають за місце вставки аркуша. Далі, кількість аркушів, що вставляються Count і тип аркуша Type. Типи можуть бути, наприклад, такі xlWorkSheet для розрахункового листа та xlChart для діаграми. Якщо місце розташування не вказувати, то лист буде вставлятися відносно поточного аркуша.

Sub Test() 'moonexcel.com.ua
    Sheets.Add After:=Worksheets("Аркуш3"), Count:=4
End Sub

Таким чином ми вставили 4 аркуші (Count:=4) після листа "Аркуш3". Також можна вставити лист в самий кінець книги:

Sub Test() 'moonexcel.com.ua
	Worksheets.Add
	ActiveSheet.Move After:=Sheets(ActiveWorkbook.Sheets.Count)
End Sub

Як сховати аркуш

Якщо у Вас є бажання, то деякі листи можна приховати. Це буває корисно, якщо у Вас є константи або розрахунки, які Ви не хочете щоб бачили на екрані у вигляді листів. Для цього можна використовувати метод Visible. Встановлюючи цю властивість в TRUE або FALSE ви можете прибирати або відобразити необхідний аркуш.

Sub Test() 'moonexcel.com.ua
	ActiveWorkbook.Sheets("Аркуш3").Visible = False
End Sub

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

  • VBA-Урок 2. Налагоджувач (Debugger)
  • VBA-Урок 4. Робота з діапазонами (Range)