Страницы: 1
RSS
Активировать лист рабочей книги из списка, из трёх вариантов
 
А можно сделать сразу список, типо: spisok = Array("Апсны", "Флагман", "разбивки")... и если из списка найден лист- активировать его: .spisok.Select, сейчас использую вот такую конструкцию:
Код
Sub Tеек()
Dim sh As Worksheet

  For Each sh In ThisWorkbook.Worksheets      
        If LCase(sh.Name) Like "апсны" Then
        sh.Select
        End If
        If LCase(sh.Name) Like "флагман" Then
        sh.Select
        End If
        If LCase(sh.Name) Like "разбивки" Then
        sh.Select
        End If 
Next
End Sub
хотелось бы укоротить как-то код... есть мысли какие-то? спасибо. Названия листов будут только в одном экземпляре из списка.
 
Здравствуйте. Я так делаю.
Код
Sub nnn()
    Dim Лист As Worksheet, s As String
    s = "Лист2|Лист3|Лист4" 'Можно менять список листов.
    'Имена листов лучше копировать, чтобы не было ошибок
    For Each Лист In Worksheets
         If InStr(1, s, Лист.Name) <> 0 Then
            Лист.Activate
         End If
    Next Лист
End Sub

Если просто сократить код, то можно так:
Код
Sub Tеек()
    Dim sh As Worksheet
    For Each sh In ThisWorkbook.Worksheets
        If LCase(sh.Name) Like "апсны" Then sh.Select
        If LCase(sh.Name) Like "флагман" Then sh.Select
        If LCase(sh.Name) Like "разбивки" Then sh.Select
    Next
End Sub
Изменено: DANIKOLA - 15.06.2020 19:49:29
 
DANIKOLA, спасибо!
Страницы: 1
Наверх