Страницы: 1
RSS
Создания оглавления в экселе
 
Добрый день! На одном листе есть много страниц (вниз друг за другом) на страницах главы под главы и т.д. может ли эксель автоматически сформировать оглавление? Или хотя бы определить на какой странице находиться нужный текст (название главы)?
 
на ваш вопрос: можно. макросом. ОЧЕНЬ муторно. имхо - работа для мазохистов. и, кстати, есть ограничение (связанное с ограничением кол-ва горизонтальных разделителей).  
 
а можно теперь вопрос: у Вас отобрали Word?
фрилансер Excel, VBA - контакты в профиле
"Совершенствоваться не обязательно. Выживание — дело добровольное." Э.Деминг
 
Ворд отобрали:) В этом документе много что считаеться, и он уже есть в экселе
 
а Вам именно в Вордовском стиле оглавление нужно? т.е. с указанием номеров страниц, как они будут при распечатке?  
 
или Вам достаточно списка гиперссылок в начале листа для быстрого перехода к нужной главе на листе?  
 
 
пс. первый вариант я писать не хочу - не мазохист я, да и праздники, однако :)  
над вторым можно подумать. но надо определиться - как узнать, что это глава/подглава? по тексту? по шрифту?
фрилансер Excel, VBA - контакты в профиле
"Совершенствоваться не обязательно. Выживание — дело добровольное." Э.Деминг
 
С номерами страниц, я даже в первом столбце написала Глава это или подглава (белыми буквами)
 
Список оглавления тоже есть, просто надо странице вставить (или не просто:))
 
ах, и список есть?..  
т.е. перечень глав/подглав макросом формировать не нужно?..  
 
тогда... тогда я немножко погорячился :)  
вроде бы - не слишком сложно.  
только если страниц будет не больше 1000.  
 
давайте Ваш файл (с пустыми местами вместо таблиц и расчетов), страниц на пять-семь, до 100 кб.  
будем попробовать.
фрилансер Excel, VBA - контакты в профиле
"Совершенствоваться не обязательно. Выживание — дело добровольное." Э.Деминг
 
Основная проблема в том, что строчки могут расширять или скрывать. И надо чтоб эксель как то реагировал на это. В оригинальном документе всего 200 стр, и 40 (глав + под глав). Какая функция мне скажет на какой странице нужный текст?
 
насколько я знаю, функции такой нет.  
 
черновик макроса у меня готов, но есть проблемки.  
 
используемая в макросе коллекция HPageBreaks, как я понял, глючит, если лист ни разу не был в режиме разметки страницы для текущих настроек печати.  
в общем-то, проблема невеликая - можно в макросе незаметно переключиться на этот режим, а потом вернуться к тому режиму, который был активным. глюки пропадают.  
но.  
 
если делать макрос, проставляющий номера страниц тогда, когда это и имеет смысл делать - перед печатью и перед сохранением файла, то всё будет ОК. и тормозить не будет.  
если же делать так, как Вы, вроде бы, хотите - формулами, с автопересчетом при редактировании листа...  
функцию придётся делать volatile - пересчитываемой при каждом чихе, экран всё-таки дергается-мелькает при переключениях режимов, да и тормоза гарантированы.  
 
что делать? :)
фрилансер Excel, VBA - контакты в профиле
"Совершенствоваться не обязательно. Выживание — дело добровольное." Э.Деминг
 
Я сильно извиняюсь за дикую паузу, но у меня интернет пропал :(. Можно перед печатью проставить номера и все норм будет. Большое спасибо, очень хорошо когда есть люди для которых нет не решаемых задач! Можете прислать черновик макроса
 
{quote}{login=}{date=05.05.2012 11:28}{thema=}{post}прислать черновик макроса{/post}{/quote}  
подчеркиваю - именно черновик :(  
алгоритм неоптимальный, наблюдаются небольшие тормоза.  
но вроде бы работает.  
пробуйте.  
если правильно, но недопустимо медленно - обращайтесь, попробую ускорить работу.  
если неправильно - тем более обращайтесь :)
фрилансер Excel, VBA - контакты в профиле
"Совершенствоваться не обязательно. Выживание — дело добровольное." Э.Деминг
 
Отлично! Спасибо большое, работает! Только я переоценил свои возможности (думал смогу по аналогии сделать на свой файл), не могли ли Вы к моему файлу его пределать?    
P.S. Если что-то надо переделать (скорректировать) в файле пишите.
 
{quote}{login=}{date=06.05.2012 12:07}{thema=}{post}к моему файлу его пределать{/post}{/quote}  
к какому?  
я и делал на вашем файле - тот, который в post_332101.xlsx  
только у меня ex 2003, поэтому и сохранил в xls-формате.  
 
если вам нужен формат 2007/2010, сохраните этот файл как xlsm - с поддержкой макросов.
фрилансер Excel, VBA - контакты в профиле
"Совершенствоваться не обязательно. Выживание — дело добровольное." Э.Деминг
 
Я файл который для примера отправлял упростил. Вот мой файл
 
Не могу прикрепить файл, можно вам на айфолдер Мой файл  http://ifolder.ru/30327654
 
{quote}{login=}{date=06.05.2012 12:25}{thema=Re: }{post}Не могу прикрепить файл, можно вам на айфолдер Мой файл  http://ifolder.ru/30327654{/post}{/quote}Неудивительно - 4,33М :-) Будет время - ознакомьтесь с Правилами.
 
ознакомьтесь с Правилами.{/post}{/quote}  
С удовольствие, отличный сайт и хорошие люди!
 
мде...  
{quote}{login=ikki}{date=06.05.2012 12:20}{thema=Re: }{post}у меня ex 2003{/post}{/quote}  
ладно, будем подумать. но обещать ничего не могу.
фрилансер Excel, VBA - контакты в профиле
"Совершенствоваться не обязательно. Выживание — дело добровольное." Э.Деминг
 
А Вы можете  строчки подписать какой что делает? Или у Вас получиться написать.
 
ок. посмотрел. пока еще ничего не делал.  
могу предложить следующее: я описываю последовательность действий (добавить столбцы, создать имена. вставить куски кода) для вашего файла.  
вы в своем 2010 по этому описанию сами все делаете.  
если согласны - пишите а почту в подписи и (желательно) в аську - почта порой глючит :(  
пс. маленькое предупреждение - вариант платный. но сумма смешная.
фрилансер Excel, VBA - контакты в профиле
"Совершенствоваться не обязательно. Выживание — дело добровольное." Э.Деминг
 
Написал вам в аси
Страницы: 1
Читают тему
Наверх