Автоматизация верстки телефонного справочника из Excel

  • Автор темы Автор темы den1762
  • Дата начала Дата начала
Статус
Закрыто для дальнейших ответов.

den1762

Участник
Топикстартер
Сообщения
10
Реакции
13
Существует база данных в Excel с 1700 сотрудниками и их контактными данными.
Т.к. с существующим электронным справочником работает только 1/3 сотрудников (у остальных нет компьютеров) было принято решение изготовить печатный вариант.

С inDesign работаю не первый год (в основном это научные журналы и газеты), но здесь задача специфична, т.к. из-за текучести кадров контактные данные существенно меняются и требуется перевыпуск печатного варианта каждый квартал.

Есть какие-нибудь наработки по автоматизации данного процесса?
Не понятно как автоматически подразделения ставить в начале, а потом уже самих сотрудников с должностями и контактами.


fin.jpg
 
Ответ: Автоматизация верстки телефонного справочника из Excel

Например, "линковать" эксель-файл если его структура не меняется. Настроить стили ячеек. Останется только подогнать количество страниц при каждой перевёрстке.
 
Ответ: Автоматизация верстки телефонного справочника из Excel

Например, "линковать" эксель-файл если его структура не меняется. Настроить стили ячеек. Останется только подогнать количество страниц при каждой перевёрстке.

В принципе так и начал, но столкнулся с проблемой, что в макете с начало необходимо указывать название название подразделения, а ниже уже идет таблица с должностью, ФИО и контактами.
Т.е. если просто прилинковать файл, то название подразделение будет около каждого ФИО.
 
Ответ: Автоматизация верстки телефонного справочника из Excel

Думаю, это задача для программистов, разбирающихся в Access. Там можно собрать что-то типа отчёта в нужном виде (за терминологию не отвечаю, давно дело было), экпортнуть в тот же Exel и уже его импортировать в Индизайн.
 
Ответ: Автоматизация верстки телефонного справочника из Excel

Думаю, это задача для программистов, разбирающихся в Access. Там можно собрать что-то типа отчёта в нужном виде (за терминологию не отвечаю, давно дело было), экпортнуть в тот же Exel и уже его импортировать в Индизайн.

Первоначально БД выгружается из системы управления предприятием в Excel. Если загонять в Access - это еще более замедлит процесс... ':('

По факту проблема только автоматизацией размещения названия структурного подразделения.
Принципы построения содержания и глоссария понятны, в вот с этим никак.
 
Ответ: Автоматизация верстки телефонного справочника из Excel

Загнать таблицу в акцесс, обычный отчет с одним уровнем группировки и сразу на печать. Зачем индизайн?
 
Ответ: Автоматизация верстки телефонного справочника из Excel

Загнать таблицу в акцесс, обычный отчет с одним уровнем группировки и сразу на печать. Зачем индизайн?
Наверное это оптимальный вариант. Просто я не могу придумать, как с помощью Data Merge или линкования разнести данные по таблицам на основе критериев. Т.е. как-то надо объяснить InDesign`у, что ему нужно перебирать все строки с оглядкой на столбец "Подразделение" и заносить в определенную таблицу только те поля, где значение сошлось.

Можно конечно в полуручном режиме, но мороки будет слишком много. Отсортировать данные по столбцу Подразделение. Разместить в таблицах все остальные столбцы. Затем самостоятельно порезать и поназывать таблицы в соответствии с принадлежностью к отделу. При обновлении исходной базы снова отсортировать ее по подразделению и надеяться, что количество работников в каждом отделе не изменится. В противном случае искать, что куда съехало будет сложнее, чем сделать все по-новой.
 
Ответ: Автоматизация верстки телефонного справочника из Excel

Т.е. как-то надо объяснить InDesign`у, что ему нужно перебирать все строки с оглядкой на столбец "Подразделение" и заносить в определенную таблицу только те поля, где значение сошлось.
И эту задачу вполне решал, даже группировка была по двум критериям, в экселе сортировка по подразделению, потом небольшой макрос удаляющий дубли подразделений и оставляющий только первое название.
Затем копипаст в ворд (plain text), проставления стилей для подразделений поиском/заменой. Затем опять макросом проходимся по тексту кроме этого стиля и все преобразуем обратно в таблицы.
Дальше копипаст в индизайн.
По настроению возможны вариации.
 
Ответ: Автоматизация верстки телефонного справочника из Excel

А вы спросите тех, кто выгружает вам базу в Excell, может ее можно выгрузить в более удобном виде?
 
Ответ: Автоматизация верстки телефонного справочника из Excel

Цитата Сообщение от GeorgeS Посмотреть сообщение
Например, "линковать" эксель-файл если его структура не меняется. Настроить стили ячеек. Останется только подогнать количество страниц при каждой перевёрстке.
В принципе так и начал, но столкнулся с проблемой, что в макете с начало необходимо указывать название название подразделения, а ниже уже идет таблица с должностью, ФИО и контактами.
Можно сделать несколько таблиц, т.е. по одной на подразделение. Если, конечно, подразделений терпимое кол-во.

А можно через XML.

Если имеющийся фрагмент верстки экспортировать в XML, получится образец для изготовления пригодного для импорта XML. Затем понадобятся услуги программиста, который сможет написать XSLT-инструкцию для конвертации исходной экселевской таблицы в "образцовый" XML в процессе импорта в Индизайн.

Т.е. порядок такой: excel save as XML, import XML + указать XSLT-файл + не забыть вкл. Link
 
Ответ: Автоматизация верстки телефонного справочника из Excel

И эту задачу вполне решал, даже группировка была по двум критериям, в экселе сортировка по подразделению, потом небольшой макрос удаляющий дубли подразделений и оставляющий только первое название.
Затем копипаст в ворд (plain text), проставления стилей для подразделений поиском/заменой. Затем опять макросом проходимся по тексту кроме этого стиля и все преобразуем обратно в таблицы.
Дальше копипаст в индизайн.
По настроению возможны вариации.
Всего-то пару небольших макросов. :)
Хочу уточнить (больше для себя): точно копипаст в InDesign? Без линкования? А как дальше быть при следующем выпуске и новой базе? Наша песня хороша — начинай сначала? :)
По сути общий процесс подготовки понятен. Только я бы это делала не в Word`e, а в InDesign (не дружу с макросами): где-то грепом, где-то чуть-чуть ручками. Хотя поисковый запрос выполняющий этот пункт пока сформировать не получилось:
небольшой макрос удаляющий дубли подразделений и оставляющий только первое название.
Но тут может надо просто еще подумать и поковырять,
Вопросы появляются на этапе следующего выпуска с новой базой. Ведь можно даже приликовать или Data Merge прикрутить с заранее подготовленным в Word / InDesign файлом, но что будет при малейшем изменении базы? Если один из отделов упразднят или разделят на два, куда на автомате подгрузятся эти данные? А если количество сотрудников в отделе прибавиться, InDesign вряд ли добавит еще строки в таблицу. Вот как-то не клеится у меня автоматизация этого процесса.
 
Ответ: Автоматизация верстки телефонного справочника из Excel

Зачем линкование, датамердж и прочее. Задача ТС не требует этих средств.
Хотя средствами офиса актуальный справочник может формироваться на лету в любое время, достаточно запустить акцесс, создать базу данных, в таблицах создать связь с экселевским файлом и создать один отчет.
Применительно к моему способу обработки данных, информация получается сплошным текстом, весь процесс заново занимает незначительное время. Это как перезалить новый текст в книге.
 

Вложения

  • tab.JPG
    tab.JPG
    50.7 КБ · Просм.: 936
Ответ: Автоматизация верстки телефонного справочника из Excel

А вы спросите тех, кто выгружает вам базу в Excell, может ее можно выгрузить в более удобном виде?
БД MS SQL из нее делается выгрузка в CSV или Excel.

Можно сделать несколько таблиц, т.е. по одной на подразделение. Если, конечно, подразделений терпимое кол-во.

А можно через XML.

Если имеющийся фрагмент верстки экспортировать в XML, получится образец для изготовления пригодного для импорта XML. Затем понадобятся услуги программиста, который сможет написать XSLT-инструкцию для конвертации исходной экселевской таблицы в "образцовый" XML в процессе импорта в Индизайн.

Т.е. порядок такой: excel save as XML, import XML + указать XSLT-файл + не забыть вкл. Link
Если есть программист, который сможет написать необходимую XSLT-инструкцию буду очень признателен.
 
Ответ: Автоматизация верстки телефонного справочника из Excel

Зачем линкование, датамердж и прочее. Задача ТС не требует этих средств.
Хотя средствами офиса актуальный справочник может формироваться на лету в любое время, достаточно запустить акцесс, создать базу данных, в таблицах создать связь с экселевским файлом и создать один отчет.
Применительно к моему способу обработки данных, информация получается сплошным текстом, весь процесс заново занимает незначительное время. Это как перезалить новый текст в книге.
Этап 1. Убираем дубли - это понятно, как реализовать.
Этап 2. Выше каждой строки с городами создается пустая строка - не понятно, как это делается в автомате в Excel. Это функция?
Этап 3. Смещаем название города на одну строку вверх. Наверное выделяем, вырезаем и вставляем со смещением?
Этап 4. Перемещаем название городов в право на свободные ячейки. Тоже не понятно как сделать автоматически.

Идея интересная.
 
Ответ: Автоматизация верстки телефонного справочника из Excel

А почему нужно это делать в индизайне? ну конечно есть финансовые соображения, или оформить нужно на уровне?
 
Ответ: Автоматизация верстки телефонного справочника из Excel

Второй-четвертый этап делал в ворде.
 
Ответ: Автоматизация верстки телефонного справочника из Excel

А почему нужно это делать в индизайне? ну конечно есть финансовые соображения, или оформить нужно на уровне?
Необходимо оформление, содержание с подразделениями, весь список ФИО с указанием на номер страницы и т.д.

Второй-четвертый этап делал в ворде.
Скриптами или вручную? Возможно ли это сделать средствами Excel?


С Этапом 4 разобрался - делается функциями Консолидация или Сцепить.
 
Ответ: Автоматизация верстки телефонного справочника из Excel

Применительно к моему способу обработки данных, информация получается сплошным текстом, весь процесс заново занимает незначительное время. Это как перезалить новый текст в книге.
Вот, на этом этапе у меня происходила загвоздка понимания, т.к. я сразу представляю, что полученный текст еще надо оформить, по страничкам красиво разложить, отверстать собственно. А после этого хочется новые данные просто аккуратненько подменить, не ломая предыдущих стараний. Если ТЗ так не стоит, то вопрос почти снят. "Почти", потому что мне он все еще интересен, но тема чужая и не об этом.

Этап 1. Убираем дубли - это понятно, как реализовать.
Создается впечатление, что слепить все дубли в один — это какое-то плевое дело, о котором все знают. И я хочу знать. Расскажите мне, пожалуйста.:) Для остальных трёх пунктов я вижу способы решения и в Word, и в Indesign без особых усилий. А как удалить все дубли и оставить только первый экземпляр? Хоть бы где: Word, InDesign, на худой конец Excel. Буду очень благодарна за совет.
 
Ответ: Автоматизация верстки телефонного справочника из Excel

Скриптами или вручную? Возможно ли это сделать средствами Excel?
Можно и в экселе, прям все пункты одним скриптом. В ворде достаточно замены.
А можно вставить в индизайн как текст и причесать грепом.
Кстати из акцесса отчет тоже можно выгнать в ворд) там уже эта разбивка будет автоматически сделана.
 

Вложения

  • grep.JPG
    grep.JPG
    47.3 КБ · Просм.: 1 249
  • acwo.JPG
    acwo.JPG
    137.6 КБ · Просм.: 1 394
Статус
Закрыто для дальнейших ответов.