Как одновременно (синхронно) изменять данные и параметры форматирования сразу в нескольких рабочих листах?
Категория: Basic
2012-07-02 22:03:30
Для того, чтобы синхронно изменять данные сразу в нескольких рабочих листах, достаточно всего лишь вручную выделить (сгруппировать) нужные листы.
Это позволит Вам обойтись без использовании макросов, однако, при наличии нескольких групп и частом их применении, выделение листов можно осуществить и программно. Для этого, скопируйте нижеприведённый код в модуль ThisWorkbook (ЭтаКнига) нужной рабочей книги и сохраните внесённые изменения. Теперь, после активации любого из листов, входящих в группу, Вы сможете продолжить работу с группой выделенных листов.
code: #vba
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
Поделиться: