Форум программистов, компьютерный форум, киберфорум
VBA
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.95/19: Рейтинг темы: голосов - 19, средняя оценка - 4.95
0 / 0 / 0
Регистрация: 26.10.2012
Сообщений: 5
Word

Менять номера рисунков в соответствии с номером главы

21.02.2013, 21:26. Показов 3748. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Возможно это реализовать в VBA Word?
Допустим имеется структура :

Глава 1. Название главы (обычные напечатанные строчки)
....
Глава 2. Название главы
....

В каждой главе есть рисунки: Рис.1.1 - принадлежит 1-ой главе, Рис.2.1 - второй
Если вдруг пользователь случайно в Главу 1 добавил рисунок и подписал его Рис.2.1
мне надо чтобы программа меняла номера рисунков на правильные, в соответствии с главами.

Дайте совет! Мне просто кажется, что это сделать нереально.

А еще один вопрос:
Можно ли через созданную форму в VBA управлять документом? ( выделять текст, менять его параметры с помощью кнопок на этой форме)
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
21.02.2013, 21:26
Ответы с готовыми решениями:

Сохранение Рисунка из Word в отдельный файл Рисунка
Ситуация следующая. В документе Word есть рисунок, его надо преобразовать в файл Рисунок с...

Заполнить квадратный массив в порядке возрастания в соответствие с рисунком
дан квадратный массив a(n,n) (кол-во столбцов/строк вводится с клавиатуры). Заполнить его в...

Хочу менять размер PictureBox в зависимости от размеров загружаемого рисунка.
Хочу менять размер PictureBox в зависимости от размеров загружаемого рисунка. Делаю так. Сначала...

6
5472 / 1150 / 50
Регистрация: 15.09.2012
Сообщений: 3,576
21.02.2013, 22:11
Нумерация рисунков

Есть такое понятие в программе "Word" - "Название". Название можно использовать, чтобы автоматически нумеровать рисунки, но номера могут быть только на одном уровне, т.е. если будут нужны номера рисунков типа 1.1, то нельзя будет сделать, 1 или 1.1.1.

Можно попробовать сделать макрос, который будет проверять правильность нумерации рисунков. Заранее не могу сказать - можно ли в вашем случае сделать такой макрос. Вам нужно выложить документ с примерными данными и на этом документе пояснить, что нужно сделать.


Работа с Word-документом с помощью формы

Через форму можно работать с Word-документом.
1
15155 / 6428 / 1731
Регистрация: 24.09.2011
Сообщений: 9,999
21.02.2013, 22:16
Вообще-то в Ворде есть механизм вставки "правильных" номеров: выделить рисунок - Вставка - Название - Нумерация - Включить номер главы.
При вставке рисунка нумерация последующих рисунков соответственно изменится (если нумерация сделана описанным выше способом).
1
0 / 0 / 0
Регистрация: 26.10.2012
Сообщений: 5
21.02.2013, 22:55  [ТС]
а как же мне это прописать тогда в коде?

Добавлено через 3 минуты
Через форму можно работать с Word-документом.
А нет примера кода? сама не смогла найти.

Добавлено через 6 минут
Есть такое понятие в программе "Word" - "Название".
Это я нашла как делать, но как это запихать в макрос...
Вообщем суть такая - у нас есть структура документа, как у диплома, т.е. есть главы и в них могут быть рисунки. Ну то, что может произойти я уже писала. ( ошибки с привязкой глав и рисунков)
И мне нужно написать такой код, который бы это правил все...
0
15155 / 6428 / 1731
Регистрация: 24.09.2011
Сообщений: 9,999
22.02.2013, 01:00
Цитата Сообщение от dakotaaaa Посмотреть сообщение
Если вдруг пользователь случайно в Главу 1 добавил рисунок и подписал его Рис.2.1
мне надо чтобы программа меняла номера рисунков на правильные, в соответствии с главами.
Чтобы решить эту задачу в общем случае, надо создавать искусственный интеллект. Потому что пользователь может подписать рисунок совершенно по-разному: это может быть абзац до рисунка, абзац после рисунка (возможно, плюс еще пустой абзац между рисунком и подписью), Надпись справа или слева от рисунка. Или таблица из двух ячеек - в одной рисунок, в другой подпись. И вид подписи может быть разным: "Рис. 1.1", "Рисунок 1-1" и т.д.
Создавать макрос, который сможет учесть это все, я не вижу смысла. Проще решить проблему средствами Ворда и административными методами: создать шаблон (.dot) на основе образцового документа со структурой (стили глав, разделов, основного текста с многоуровневой нумерацией), включить автоназвание (Вставка - Название - Автоназвание, прописать параметры). Для обычных рисунков из файла объект автоназвания - "Рисунок Microsoft Word".
И обязать всех пользователей создавать новые документы на основе этого шаблона. При вставке рисунка будет автоматически создаваться название с номером. Если пользователь не будет его менять вручную - ошибок не будет в принципе. Ну а если будет - применять административные методы
1
5472 / 1150 / 50
Регистрация: 15.09.2012
Сообщений: 3,576
22.02.2013, 06:52
dakotaaaa, сделайте пустой документ, сделайте в документе форму, например, с одним текстовым полей и кнопкой, выложите документ на Форуме и на основе выложенного документа спросите, например, как с помощью формы ввести в документ текст.
0
5472 / 1150 / 50
Регистрация: 15.09.2012
Сообщений: 3,576
25.02.2013, 13:03
Удалил сообщение.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
25.02.2013, 13:03
Помогаю со студенческими работами здесь

Макрос номера рисунка с созданием закладки
Доброго времени суток! Решил начать осваивать автоматизацию в Word по оформлению и столкнулся со...

Координаты рисунка (номер страницы)
Здравствуйте, Коллеги! Прошу помощи в следующем вопросе. Есть файл он содержит 5 стр. на...

обновление записи в соответствии с ее инвентарным номером в excel
у меня есть две excel-книги в них таблицы, нужно из одной таблицы в соответствии с инвентарным...

Найти количество элементов матрицы, расположенных под главной диагональю и над главной
вот думаю как то так но не работает( 'выше главной For j = 1 To 5 For i = 1 To j If a(i,...

Определить во сколько раз отличаются максимальный элемент на главной диагонали и минимальный элемент на не главной диагонали
Определить во сколько раз отличаются максимальный элемент на главной диагонали и минимальный...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru