Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 27.05.2014, 15:34   #1
Jaroslav
Форумчанин
 
Регистрация: 08.06.2009
Сообщений: 179
По умолчанию выделение нескрытых листов книги

Всем привет. У меня такой вопрос: как выделить листы, которые идут перед листом с именем Лист3. Проблема заключается в том, что в книге есть скрытые и очень скрытые листы.
Вот мой код:
Код:
k = Sheets("Лист3").Index
        ReDim arr2(1 To k - 1)
        For m = 1 To k - 1
            arr2(m) = m
        Next
        Sheets(arr2).Select

Последний раз редактировалось Jaroslav; 27.05.2014 в 15:39.
Jaroslav вне форума Ответить с цитированием
Старый 27.05.2014, 15:47   #2
EducatedFool
Программист VBA
СуперМодератор
 
Аватар для EducatedFool
 
Регистрация: 13.07.2008
Сообщений: 6,856
По умолчанию

Код:
Sub test()
    k& = Sheets("Лист3").Index

    Dim sh As Worksheet, n&
    For Each sh In ThisWorkbook.Worksheets
        If sh.Visible = xlSheetVisible And sh.Index < k& Then
            sh.Select n = 0
            n = n + 1
        End If
    Next sh
End Sub
EducatedFool вне форума Ответить с цитированием
Старый 27.05.2014, 16:00   #3
Jaroslav
Форумчанин
 
Регистрация: 08.06.2009
Сообщений: 179
По умолчанию

Спасибо, EducatedFool. Все работает
А что значит код:
Код:
sh.Select n = 0
Jaroslav вне форума Ответить с цитированием
Старый 27.05.2014, 16:07   #4
EducatedFool
Программист VBA
СуперМодератор
 
Аватар для EducatedFool
 
Регистрация: 13.07.2008
Сообщений: 6,856
По умолчанию

если n=0 (ещё листы не выделялись) - вызывается метод SELECT с параметром TRUE
это обычное выделение листа (предыдущее выделение сбрасывается)

если n>0 (нужные листы уже выделялись) - вызывается метод SELECT с параметром FALSE
это выделение листа без сброса предыдущего выделения (листы добавляются к ранее выделенным)
EducatedFool вне форума Ответить с цитированием
Старый 27.05.2014, 16:10   #5
Jaroslav
Форумчанин
 
Регистрация: 08.06.2009
Сообщений: 179
По умолчанию

Спасибо за разъяснение
Jaroslav вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
VBA - выделение группы листов Tihon Microsoft Office Excel 14 09.01.2013 20:46
Перебор листов книги VistaSV30 Microsoft Office Excel 2 16.03.2010 14:43
Список листов книги Scolopendra Microsoft Office Excel 3 12.12.2009 21:58
Сортировка листов книги RUBEY Microsoft Office Excel 1 17.07.2008 10:57
выделение листов по условию Bronyk Microsoft Office Excel 5 11.03.2008 19:40