Другие статьи рубрики:


Hi-Tech  ->  Программирование

VBA: показ нескольких листов в Excel


Автоиатизация Excel становится насущной задачей каждого пользователя MS Office. Существует множество задач исполнение которых можно ускориить или упростить с помощью простого и доступного языка программирования Visual Basic for Applications. В качестве примера можно привести пример из Excel.
      Excel позволяет скрывать несколько листов одним нажатием кнопки, выбрав все листы , которые вы хотите скрыть. Показ скрытые листы совсем другая история. Excel только позволяет отобразить однин лист одновременно. Естественно, если у вас есть несколько листов которые вы хотите отобразить, это может быть очень трудоемкой задачей.Для решения этой проблемы можно использовать макрос для отображения листов. 
Следующий VBA макрос может отобразить все листы в текущей книге :

Sub UnhideAllSheets()
Dim wsSheet As Worksheet
For Each wsSheet In ActiveWorkbook.Worksheets
wsSheet.Visible = xlSheetVisible
Next wsSheet
End Sub

Если вы не хотите отобразить все листы сразу, вы можете вызвать следующий макрос, чтобы получить запрос на отображение каждого листа
 Следующий макрос  справиться с этой задачей:

Sub ОтображениеСзапросом()
Dim ИмяЛиста As String
Dim ТекстСообщения As String
Dim Msgres As VbMsgBoxResult
For Each wsSheet In ActiveWorkbook.Worksheets
If wsSheet.Visible = xlSheetHidden Then
ИмяЛиста = wsSheet.Name
ТекстСообщения = "Показ следующего листа?" & vbNewLine & ИмяЛиста
Msgres = MsgBox(ТекстСообщения, vbYesNo)
If Msgres = vbYes Then wsSheet.Visible = xlSheetVisible
End If
Next wsSheet
End Sub

Эти и другие задачи автоматизации можно решить с помощью языка программирования VBA.
 Источник : vba-help.ru




Параметры статьи

Адрес источника: http://vba-help.ru/primerVBA

постоянная ссылка на статью: http://www.po4itaem.ru/art/14450_stat.html