Как одновременно (синхронно) изменять данные и параметры форматирования сразу в нескольких рабочих листах — Visual Basic(Бейсик)

Для этого, скопируйте нижеприведённый код в модуль ThisWorkbook (ЭтаКнига) нужной рабочей книги и сохраните внесённые изменения. Теперь, после активации любого из листов, входящих в группу, Вы сможете продолжить работу с группой выделенных листов.

Private Sub Workbook_SheetActivate(ByVal Sh As Object)
    On Error GoTo ErrHandler '
    Select Case LCase(Sh.Name)
        Case "архив", "копия": iSheets = Array("Архив", "Копия")
        Case "бухгалтер", "директор": iSheets = Array("Бухгалтер", "Директор")
        Case "семенов", "петров", "отчет": iSheets = Array("Семенов", "Петров", "Отчет")
        Case Else: Exit Sub
    End Select
    Me.Worksheets(iSheets).Select
ErrHandler:
    Select Case Err.Number
        Case 9: MsgBox "Отсутствует лист(ы) с указанным именем", , ""
        Case 1004: MsgBox "Листы не должны быть скрытыми", , ""
    End Select
End Sub

Leave a Comment