Как сделать нумерацию рисунков в word?

Я поражаюсь разработчикам, которые делали в Ворде автоматическую нумерация формул, рисунков и всех остальных объектов. Это ж надо было додуматься сделать так, что возможность вроде как есть, но пользоватья ей невозможно без плясок с бубном и дубины шамана. Сразу предупреждаю, что я сейчас говорю про Ворд из Office 2003 , не знаю может быть в 2007 или 2010 что-то и изменилось.

Итак, что нам нужно от Ворда? Вот, допустим, есть у нас такой текст:

как сделать нумерацию рисунков в word

Мы хотим сделать так, чтобы рисунки автоматически перенумеровывались, если перед ними добавляются новые рисунки, и чтобы при этом все упоминания номера рисунка в тексте тоже автоматом исправлялись.

В принципе, в ворде есть такая возможность. Сначала вставим номер рисунка. Для этого удаляем единицу, которую мы уже написали в подрисуночной подписи, выбираем пункт меню «Вставка — Ссылка — Название», затем выбираем в поле «Подпись» «Рисунок», ставим галку «Исключить подпись из названия», потому что слово «Рисунок» мы уже и так написали.

как сделать нумерацию рисунков в word

Теперь у нас появилась другая единица — в виде поля, которая будет подкрашиваться серым (всегда или только, когда курсор находится рядом с ней в зависимости от настроек).

как сделать нумерацию рисунков в word

Теперь мы хотим сослаться на этот рисунок в тексте, чтобы эта ссылка всегда оставалась правильной независимо от того, какой номер этого рисунка станет в будущем. Казалось бы, в Ворде все для этого есть. Удаляем нашу единицу в тексте, ставим курсор на ее место и выбираем пункт меню «Вставка — Ссылка — Перекрестная ссылка».

как сделать нумерацию рисунков в word

Выбираем тип ссылки «Рисунок», находим в списке внизу наш рисунок, а вот список из «Вставить ссылку на:» вгоняет в ступор. Казалось бы, нам нужно просто вставить номер рисунка «А вот хрен вам», — говорят разработчики — «Мы лучше знаем, что вам надо вставлять. Вы хотите вставить ‘Рисунок 1’ «. Просто номер без постоянной части вставить нельзя, а постоянная часть — это все, что находится на этой же строке левее номера.

Ладно, мы не гордые,  мы можем для начала вставить все это безобразие полностью:

как сделать нумерацию рисунков в word

А теперь назло разработчикам выделяем слово «Рисунок», выбираем пункт меню «Формат — Шрифт» и делаем выделенную область невидимой с помощью галки «скрытый». На первый взгляд мы получили, что хотели:

как сделать нумерацию рисунков в word

Мы можем даже точно так же добавить рисунок выше, а наша ссылка останется верной:

как сделать нумерацию рисунков в word

Для пересчета полей только понадобится выделить весь текст и нажать клавишу F9.

Все вроде бы работает, но появляется другая проблема — если включить отображение непечатных знаков, но все наши лишние «Рисунки» опять появятся. Больше того, такой же способ нумерации можно применять для формул, тогда при вставке ссылки на нее вместо относительно безобидного «Рисунок» будет втавлена целая формула, — я ведь выше писал, что постоянной частью считается все, что левее поля с номером.

как сделать нумерацию рисунков в word

Такой текст в режиме отображения непечатных символов читать просто невозможно, а этот режим, все-таки, очень уж полезен.

Кроме того, здесь есть еще один неприятный момент. Если документ создан в Ворде из Office 97 (есть еще такие, кто им пользуется) и старее, то будет невозможно выделить только слово «Рисунок» в поле без номера. Для обхода этой проблемы в более новом Ворде, достаточно создать новый документ и скопировать туда содержимое исходного файла.

К своему позору, в своем диссере я использовал описанный способ нумерации формул и рисунков (только не надо говорить про TeX), а когда все уже было оформлено, нашел другой способ автоматической нумерации, который не портит режим с непечатными знаками.

Для начала посмотрим, что делает ворд при вставке ссылки на рисунок (или формулу). Он создает закладку с незапоминающимся названием вроде «_Ref262659882», которая ссылается на текст «Рисунок N». Чтобы в этом убедиться, щелкните правой кнопкой на ссылку на рисунок и выберите пункт меню «Коды / значение полей». Вы увидите примерно следующее:

как сделать нумерацию рисунков в word

Мы можем поступить так же, но умнее. Мы выделим созданное поле с номером в подрисуночной подписи (только номер) и создадим свою закладку на это поле. Для этого надо выбрать пункт меню «Вставка — Закладка»

как сделать нумерацию рисунков в word

Вводим имя закладки (пробелы в имени использовать нельзя)

А теперь, если мы хотим сослаться на рисунок, идем все в тот же пункт меню «Вставка — Ссылка — Перекрестная ссылка» и в качестве «Тип ссылки» выбираем «Закладка», в поле «Вставить ссылку на:» выбираем «Текст закладки», а внизу находим нашу только что созданную закладку:

как сделать нумерацию рисунков в word

Ура! мы опять сделали ссылку на номер:

как сделать нумерацию рисунков в word

Можем еще раз проверить, что автонумерация работает, добавив еще один рисунок в начале.

как сделать нумерацию рисунков в word

Можем опять включить отображение непечатных символов и убедиться, что на этот раз ничего лишнего не появляется:

как сделать нумерацию рисунков в word

А на следующем скриншоте показаны коды полей:

как сделать нумерацию рисунков в word

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

Эх, знать бы про этот способ хотя бы на год раньше…

Я поражаюсь разработчикам, которые делали в Ворде автоматическую нумерация формул, рисунков и всех остальных объектов. Это ж надо было додуматься сделать так, что возможность вроде как есть, но пользоватья ей невозможно без плясок с бубном и дубины шамана. Сразу предупреждаю, что я сейчас говорю про Ворд из Office 2003 , не знаю может быть в 2007 или 2010 что-то и изменилось.

Итак, что нам нужно от Ворда? Вот, допустим, есть у нас такой текст:

Мы хотим сделать так, чтобы рисунки автоматически перенумеровывались, если перед ними добавляются новые рисунки, и чтобы при этом все упоминания номера рисунка в тексте тоже автоматом исправлялись.

В принципе, в ворде есть такая возможность. Сначала вставим номер рисунка. Для этого удаляем единицу, которую мы уже написали в подрисуночной подписи, выбираем пункт меню «Вставка – Ссылка – Название», затем выбираем в поле «Подпись» «Рисунок», ставим галку «Исключить подпись из названия», потому что слово «Рисунок» мы уже и так написали.

Теперь у нас появилась другая единица – в виде поля, которая будет подкрашиваться серым (всегда или только, когда курсор находится рядом с ней в зависимости от настроек).

Теперь мы хотим сослаться на этот рисунок в тексте, чтобы эта ссылка всегда оставалась правильной независимо от того, какой номер этого рисунка станет в будущем. Казалось бы, в Ворде все для этого есть. Удаляем нашу единицу в тексте, ставим курсор на ее место и выбираем пункт меню «Вставка – Ссылка – Перекрестная ссылка».

Выбираем тип ссылки «Рисунок», находим в списке внизу наш рисунок, а вот список из «Вставить ссылку на:» вгоняет в ступор. Казалось бы, нам нужно просто вставить номер рисунка «А вот хрен вам», – говорят разработчики – «Мы лучше знаем, что вам надо вставлять. Вы хотите вставить ‘Рисунок 1′ «. Просто номер без постоянной части вставить нельзя, а постоянная часть – это все, что находится на этой же строке левее номера.

Ладно, мы не гордые,  мы можем для начала вставить все это безобразие полностью:

А теперь назло разработчикам выделяем слово «Рисунок», выбираем пункт меню «Формат – Шрифт» и делаем выделенную область невидимой с помощью галки «скрытый». На первый взгляд мы получили, что хотели:

Мы можем даже точно так же добавить рисунок выше, а наша ссылка останется верной:

Для пересчета полей только понадобится выделить весь текст и нажать клавишу F9.

Все вроде бы работает, но появляется другая проблема – если включить отображение непечатных знаков, но все наши лишние «Рисунки» опять появятся. Больше того, такой же способ нумерации можно применять для формул, тогда при вставке ссылки на нее вместо относительно безобидного «Рисунок» будет втавлена целая формула, – я ведь выше писал, что постоянной частью считается все, что левее поля с номером.

Такой текст в режиме отображения непечатных символов читать просто невозможно, а этот режим, все-таки, очень уж полезен.

Кроме того, здесь есть еще один неприятный момент. Если документ создан в Ворде из Office 97 (есть еще такие, кто им пользуется) и старее, то будет невозможно выделить только слово «Рисунок» в поле без номера. Для обхода этой проблемы в более новом Ворде, достаточно создать новый документ и скопировать туда содержимое исходного файла.

К своему позору, в своем диссере я использовал описанный способ нумерации формул и рисунков (только не надо говорить про TeX), а когда все уже было оформлено, нашел другой способ автоматической нумерации, который не портит режим с непечатными знаками.

Для начала посмотрим, что делает ворд при вставке ссылки на рисунок (или формулу). Он создает закладку с незапоминающимся названием вроде «_Ref262659882″, которая ссылается на текст «Рисунок N». Чтобы в этом убедиться, щелкните правой кнопкой на ссылку на рисунок и выберите пункт меню «Коды / значение полей». Вы увидите примерно следующее:

Мы можем поступить так же, но умнее. Мы выделим созданное поле с номером в подрисуночной подписи (только номер) и создадим свою закладку на это поле. Для этого надо выбрать пункт меню «Вставка – Закладка»

Вводим имя закладки (пробелы в имени использовать нельзя)

А теперь, если мы хотим сослаться на рисунок, идем все в тот же пункт меню «Вставка – Ссылка – Перекрестная ссылка» и в качестве «Тип ссылки» выбираем «Закладка», в поле «Вставить ссылку на:» выбираем «Текст закладки», а внизу находим нашу только что созданную закладку:

Ура! мы опять сделали ссылку на номер:

Можем еще раз проверить, что автонумерация работает, добавив еще один рисунок в начале.

Можем опять включить отображение непечатных символов и убедиться, что на этот раз ничего лишнего не появляется:

А на следующем скриншоте показаны коды полей:

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

Эх, знать бы про этот способ хотя бы на год раньше…

Эта запись у меня в блоге