Весь MS Office, программирование на Visual Basic for Applications и MS VB
Модератор: Naeel Maqsudov
СашаСВ
Сообщения: 20 Зарегистрирован: 11 май 2006, 16:11
Контактная информация:
06 окт 2009, 14:33
Добрый день,
Прошу помощи в написании небольшого макроса который бы отображал несколько скрытых листов (начиная от двух). Макрос для того чтоб, их скрывать я написал с помощью мастера записи макросов, а вот чтоб отображать не получается
Busine2009
Сообщения: 322 Зарегистрирован: 18 июл 2009, 15:34
Контактная информация:
06 окт 2009, 14:47
А можешь подробно описать, что надо, а то не понятно. Прямо по пунктам: 1, 2 и т.д.
СашаСВ
Сообщения: 20 Зарегистрирован: 11 май 2006, 16:11
Контактная информация:
06 окт 2009, 16:18
У меня есть екселевский файл, в нем 7-8 листов. Периодически, (связано с работой) мне необходимо некоторые из этих листов скрывать (формат/лист/скрыть) и отображать (формат/лист/отобразить). Вручную постоянно скрывать и отображать неудобно и долго.
Макрос чтоб скрывать более, чем 1 лист я написал.
задача в следующем:
1. Написать макрос, который сможет отобразить два и более из скрытых листов
P.S. Макрос который может отображать 1 скрытый лист я создал:
Sub
Sheets("Лист 1").Visible = True
End Sub
а вот чтоб отобразить сразу несколько листов не получается.
EducatedFool
Сообщения: 197 Зарегистрирован: 06 апр 2008, 14:03
Откуда: Россия, Урал
Контактная информация:
06 окт 2009, 16:20
Код: Выделить всё
[color=darkblue]Sub[/color] test1() [color=green]' делаем ВСЕ листы видимыми[/color]
[color=darkblue]Dim[/color] sh [color=darkblue]As[/color] Worksheet
[color=darkblue]For[/color] [color=darkblue]Each[/color] sh [color=darkblue]In[/color] ThisWorkbook.Worksheets
sh.Visible = xlSheetVisible
[color=darkblue]Next[/color] sh
[color=darkblue]End[/color] [color=darkblue]Sub[/color]
[color=darkblue]Sub[/color] test2() [color=green]' делаем НЕКОТОРЫЕ листы видимыми[/color]
[color=darkblue]Dim[/color] sh [color=darkblue]As[/color] Worksheet
[color=darkblue]For[/color] [color=darkblue]Each[/color] sh [color=darkblue]In[/color] ThisWorkbook.Worksheets
[color=darkblue]If[/color] sh.Index > 6 [color=darkblue]Then[/color] sh.Visible = xlSheetVisible
[color=darkblue]Next[/color] sh
[color=darkblue]End[/color] Sub
Макросы для Excel, Word, CorelDRAW. Быстро, профессионально, недорого.
http://ExcelVBA.ru/
Благодарности принимаются на кошелёк WebMoney: R318574877619 и Яндекс.Деньги: 41001335672216
СашаСВ
Сообщения: 20 Зарегистрирован: 11 май 2006, 16:11
Контактная информация:
06 окт 2009, 16:46
Спасибо EducatedFool,
еще вопрос: можно ли такой макрос написать, чтоб отображать листы по названиям.
к примеру есть 3 листа: "данные", "анализ", "обработка", все три скрыты можно ли сделать так чтоб отобразить допустим листы "данные", "анализ".
EducatedFool
Сообщения: 197 Зарегистрирован: 06 апр 2008, 14:03
Откуда: Россия, Урал
Контактная информация:
06 окт 2009, 16:57
Код: Выделить всё
[color=darkblue]Sub[/color] НеТакойУжИСложныйМакрос()
Worksheets("данные").Visible = xlSheetVisible
Worksheets("анализ").Visible = xlSheetVisible
[color=darkblue]End[/color] [color=darkblue]Sub[/color]
Макросы для Excel, Word, CorelDRAW. Быстро, профессионально, недорого.
http://ExcelVBA.ru/
Благодарности принимаются на кошелёк WebMoney: R318574877619 и Яндекс.Деньги: 41001335672216
СашаСВ
Сообщения: 20 Зарегистрирован: 11 май 2006, 16:11
Контактная информация:
06 окт 2009, 17:12
Спасибо EducatedFool,
выручили!