|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » VBA - [решено] Excel макрос прячущий листы файла |
|
VBA - [решено] Excel макрос прячущий листы файла
|
Старожил Сообщения: 410 |
Доброго времени суток.
Ситуация такая: Допустим пользователь зашел в документ 10 мая 2012 года, как сделать чтобы он смог видеть только лист, который называется 10.05.2012, а все остальные листы были скрыты. Сделал вот так Т.е. логически должно быть так макрос срабатывает при запуске документа (название Auto_open) today() - стандартная функция, опрпделяющая сегодняшнюю дату Макрос должен скрывать все листы, в которых название не соответствует сегодняшней дате |
|
------- Отправлено: 15:46, 05-03-2012 |
В Поисках Истины Сообщения: 802
|
Профиль | Отправить PM | Цитировать McLotos, так у вас в этой части кода
Цитата McLotos:
В кавычках же указывается строковый тип. Функция today() соответсвенно не выполняется. Попробуйте тут так: |
|
------- Отправлено: 16:15, 05-03-2012 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Старожил Сообщения: 410
|
Профиль | Отправить PM | Цитировать sub or function not defined
|
------- Отправлено: 16:19, 05-03-2012 | #3 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Цитата McLotos:
И, кстати: не забудьте предусмотреть случай, когда название ни одного листа не совпадёт с текущей датой. |
|
Отправлено: 16:38, 05-03-2012 | #4 |
Старожил Сообщения: 410
|
Профиль | Отправить PM | Цитировать Sub Auto_open() Dim wsSh As Object For Each wsSh In ActiveWorkbook.Sheets If wsSh.Name <> Now() Then wsSh.Visible = xlSheetVeryHidden Next wsSh End Sub Вроде как срабатывает, но как-то странно. Unable to set the Visible property of the Worksheet class |
|
------- Последний раз редактировалось Drongo, 05-03-2012 в 17:39. Причина: тег код - [code] Отправлено: 16:48, 05-03-2012 | #5 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Цитата McLotos:
McLotos, временно вставьте следующий код: в искомую рабочую книгу, исполните его и выложите полученный результат из окна «Immediate» («Ctrl-G») сюда, обрамив его тэгом «code». |
|
Последний раз редактировалось Iska, 05-03-2012 в 19:18. Причина: ActiveWorkbook→ThisWorkbook Отправлено: 18:56, 05-03-2012 | #6 |
Старожил Сообщения: 410
|
Профиль | Отправить PM | Цитировать |
------- Отправлено: 07:50, 06-03-2012 | #7 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать McLotos, спасибо, ясно.
Цитата McLotos:
Цитата Iska:
Добавьте следующий код в рабочую книгу: Sub ShowSheetsByCurrentDateOnly() Dim objSheet As Object Dim strCurrentDate As String strCurrentDate = CStr(Date) If SheetExists(ThisWorkbook, strCurrentDate) Then ThisWorkbook.Sheets.Item(strCurrentDate).Visible = xlSheetVisible For Each objSheet In ThisWorkbook.Sheets If objSheet.Name <> strCurrentDate Then objSheet.Visible = xlSheetVeryHidden End If Next objSheet End If End Sub Function SheetExists(objWorkbook As Workbook, strSheetName As String) As Boolean On Error Resume Next SheetExists = Len(objWorkbook.Sheets.Item(strSheetName).Name) <> 0 End Function |
||
Отправлено: 12:26, 06-03-2012 | #8 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
VBA - Помогите написать макрос в Excel, экспорт данных из Excel в Word. | E.v.g | Программирование и базы данных | 7 | 03-05-2018 22:18 | |
VBA - [решено] Макрос excel | neo21 | Программирование и базы данных | 4 | 06-03-2012 22:04 | |
Разное - Макрос Excel. | KiriJolit | Microsoft Office (Word, Excel, Outlook и т.д.) | 0 | 02-12-2010 23:19 | |
[решено] Excel | Как сделать листы книги не изменяемыми (read-only) | flow2000 | Хочу все знать | 3 | 31-01-2006 13:04 | |
Внесение изменений во все листы книги Excel при помощи VB макросов | Vadikan | Программирование и базы данных | 4 | 29-12-2005 02:10 |
|