|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
07.06.2011, 15:39 | #1 |
Пользователь
Регистрация: 04.12.2009
Сообщений: 28
|
Показать только лист, выбранный в оглавлении, остальные скрыть
Тут я взялся дополировывать макрос для создания в активной книге листа "<<ОГЛАВЛЕНИЕ>>" с гиперссылками на все её листы.
При выборе гиперссылки на лист из оглавления выбранный лист и "<<ОГЛАВЛЕНИЕ>>" остаются видимыми, а все другие листы скрываются. При активизации листа "<<ОГЛАВЛЕНИЕ>>" все остальные листы книги скрываются. На листе "<<ОГЛАВЛЕНИЕ>>" добавлен пункт-гиперссылка "Все листы", позволяющий при его активизации сделать видимыми все листы книги. При необходимости название создаваемого листа "<<ОГЛАВЛЕНИЕ>>" и адрес ячейки начала оглавления на нём вводятся в первых строках кода процедуры СОЗДАТЬ_ОГЛАВЛЕНИЕ Код может функционировать самостоятельно как надстройка - создавать листы "<<ОГЛАВЛЕНИЕ>>" в любой активной книге. Вроде, всё работает как надо. Только почему-то приходится два раза запускать макрос СОЗДАТЬ_ОГЛАВЛЕНИЕ для создания оглавления в новой книге: - за первый запуск создаётся лист "<<ОГЛАВЛЕНИЕ>>" и код обработки событий - за второй - прописываются гиперссылки. НИЧЕГО НЕ ПОНИМАЮ! Пол-дня бьюсь... |
07.06.2011, 16:55 | #2 |
Пользователь
Регистрация: 04.12.2009
Сообщений: 28
|
Дмитрий (The_Prist) подсказал в чём дело - рановато использовал
Код:
Переделал код. Не могу проверить - комп заглючил - постоянно Ёксель падает. Перегружался - не помогло... Может кто-нибудь проверить, создаётся ли лист <<ОГЛАВЛЕНИЕ>> и работают ли на нём гиперссылки? Последний раз редактировалось Alex_ST; 07.06.2011 в 16:59. |
07.06.2011, 17:03 | #3 |
Старожил
Регистрация: 11.05.2010
Сообщений: 5,166
|
Алексей, у меня тоже Экс2000 упал...
Эта строка не идёт: Код:
Только вот "все листы" не работает как нужно, открывает только первый лист.
webmoney: E265281470651 Z422237915069 R418926282008
Последний раз редактировалось Hugo121; 07.06.2011 в 17:10. |
07.06.2011, 17:03 | #4 |
Форумчанин
Регистрация: 25.04.2010
Сообщений: 616
|
<<ОГЛАВЛЕНИЕ>> создается, гиперссылки работают.
Рацпредложение : когда перешли на Лист1 (2, 3,...) текст кнопки изменить на "Перейти к оглавлению" (не "Создать...") Е2010. |
07.06.2011, 20:32 | #5 |
Пользователь
Регистрация: 04.12.2009
Сообщений: 28
|
nilem,
вы немного не поняли: кнопочки на листах - просто для упрощения вызова макроса при тестировании. По моему замыслу сам макрос должен сидеть в personal.xls (или в надстройке), а для его вызова на одной из панели инструментов будет кнопочка (наверное, в меню Сервис). Именно поэтому там везде ActiveBook а не ThisWorkbook. Hugo121, а в Безопасности доступ к элементам VBProgect разрешён? |
07.06.2011, 21:22 | #6 |
Старожил
Регистрация: 11.05.2010
Сообщений: 5,166
|
Так в 2000 вроде такого не было? Сейчас уже проверить не могу, дома 2007.
Сейчас проверил дома - лист создаётся, ссылки не работают.
webmoney: E265281470651 Z422237915069 R418926282008
|
07.06.2011, 21:28 | #7 |
Пользователь
Регистрация: 04.12.2009
Сообщений: 28
|
а после того, как лист создался, попробуйте запустить макрос СОЗДАТЬ_ОГЛАВЛЕНИЕ ещё раз. Код обработки проопишется на лист оглавления и всё заработает.
Вот "дополированный" пример: |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Показать\скрыть два разных DIV | kutt | JavaScript, Ajax | 5 | 06.03.2011 12:33 |
Как найти число больше 0 из строчки и вставить относительно этого столбца остальные данные в другой лист | e_v_b | Microsoft Office Excel | 4 | 20.09.2010 06:31 |
Показать/скрыть edit`ы | Rapala | Общие вопросы Delphi | 3 | 11.05.2010 09:20 |
как скрыть/показать TMainMenu | blackstersl | Общие вопросы Delphi | 3 | 13.06.2009 18:12 |
Показать и скрыть фигуры | Иванов_ДМ | Microsoft Office Excel | 5 | 28.04.2009 16:49 |