Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Word
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 27.09.2010, 19:25   #11
OlegVE
Форумчанин
 
Регистрация: 27.09.2010
Сообщений: 376
По умолчанию

Алгоритм от меня :-)

1. Предположим находим все таблицы (или рисунки или формулы или сноски), их количество и в обратном порядке меняем на текст, запоминаем текст (Например, Рисунок 54).
2. После каждой смены на текст (фактически удаление поля) пересчитываем все поля и ищем в "Ошибка ! Источник ссылки не найден" (это будет в перекрёстной ссылке) и подставляем "Рисунок 54".

Решение не лучшее...

Что мне необходимо:
Найти/обратиться/выделить любое из этих полей в VBA и оперировать с ними.
Хотя-бы подскажите, пожалуйста, как эти поля называются в объектной модели.

Спасибо.
OlegVE вне форума Ответить с цитированием
Старый 27.09.2010, 20:00   #12
OlegVE
Форумчанин
 
Регистрация: 27.09.2010
Сообщений: 376
По умолчанию

Кое что нашел.
Что получится покажу завтра.

Всем спасибо и до свидания.
OlegVE вне форума Ответить с цитированием
Старый 28.09.2010, 00:43   #13
bdfy
Форумчанин
 
Регистрация: 12.11.2009
Сообщений: 258
По умолчанию

Цитата:
Под черновиком имеется ввиду готовый документ, в который вышестоящий обязательно должен внести правку иначе он не вышестоящий ;-)
а если записывать именно эти изменения ? любое редактирование ведь есть возможность средствами ворда записать и позже просмотреть. меню рецензирование. не скажу что я "на ты" с этой фичей но пару раз пользовал.
т.е просмотрели изменения в черновике (который сделан тупо прибитием ссылок) и изменили соответсвующим образом свой документ.

Цитата:
Хотя-бы подскажите, пожалуйста, как эти поля называются в объектной модели.
Fields это все. какое конкретно поле (по типу) наверное только просматривая .Code.Text можно понять.

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

Последний раз редактировалось bdfy; 28.09.2010 в 00:49.
bdfy вне форума Ответить с цитированием
Старый 28.09.2010, 14:44   #14
OlegVE
Форумчанин
 
Регистрация: 27.09.2010
Сообщений: 376
По умолчанию

Цитата:
Сообщение от bdfy Посмотреть сообщение
...ведь есть возможность средствами ворда записать и позже просмотреть. меню рецензирование. ...
((
Спасибо за ответ.
Не всё так Рецензирование для вышестоящих хуже чем ссылки. Попробовал раз научить, лет пять назад... Проблема научить Стили и форматирование ... Представьте себе, это надо умудриться исправлять текст в перекрёстной ссылке или, например, вставить текст среди концевых сносок, а потом спрашивать: "Почему больше текст не вставляется?"... Теперь надеюсь понятно почему для меня всё это так важно...:-(

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

Рассмотрим "плохо отформатированный текст".
Про стили и форматирование не говорим, но помним, что Microsoft кое-где автоматически подставляет стили, может они уже присутствуют в "плохо отформатированном тексте"
Заголовки
========
1. Скорее всего "Заголовки" состоят из одной строки (можно определить по длине текста)
2. Скорее всего они располагаются по центру.
3. Может быть они нумеруются
...
Основной текст
============
1. Скорее всего пользователь ввёл в начале абзаца знак табуляции (^t) или много пробелов или имеется отступ (в сочетании с п.2).
2. Длина текста от знака абзаца (^p) до знака абзаца будет большой.
...
Рисунки (Таблицы)
===============
1. В Word они ищутся и выделяются, а название можно вставить.
2. Выделить по тексту (Искать и заменить), например, красным все слова "рисун" ("таблиц"). REM: И здесь можно придумать автоматизацию, если использовать склонения и множественное число.
и т.д. и т.п

Всё это можно определить или задать посмотрев на "плохо отформатированный текст", отдельно или в сочетании.

Поищу по Fields позже, т.к. на работе ... То, что я до этого нашел по Fields, - это интерфейсы к COM объектам...:-(
Я пробовал записывать макрос, но мышка не действует, а как подобраться к полям (в режиме записи макроса) я не нашел.

Спасибо.

PS Чтобы быть конкретней, речь идёт об отчётах о научной работе. Есть отчёты за каждый год пятилетки, за кварталы (последнего года пятилетки). Теперь всё это надо объединить и подкорректировать. В итоге получить более 120 рисунков, примерно 30 таблиц и около 100 ссылок на использованные источники (литературу). Все эти части у меня уже отформатированы, проставлены ссылки, сноски, названы объекты (Рисунок, Таблица, а для формул я создал своё Название - "(" , потом ставишь после номера ")" и вставляешь перекрёстную ссылку с "Название целиком"). Вся нумерация объектов - сплошная.

Последний раз редактировалось OlegVE; 28.09.2010 в 15:03. Причина: Правка
OlegVE вне форума Ответить с цитированием
Старый 28.09.2010, 22:54   #15
bdfy
Форумчанин
 
Регистрация: 12.11.2009
Сообщений: 258
По умолчанию

OlegVE
Цитата:
Не всё так Рецензирование для вышестоящих хуже чем ссылки. Попробовал раз научить, лет пять назад... Проблема научить Стили и форматирование ... Представьте себе, это надо умудриться исправлять текст в перекрёстной ссылке или, например, вставить текст среди концевых сносок, а потом спрашивать: "Почему больше текст не вставляется?"... Теперь надеюсь понятно почему для меня всё это так важно...:-(
да они знать же даже не будут про это рецензирование. правки в файле увидите потом только вы включив соотв. опцию.
Цитата:
Рассмотрим "плохо отформатированный текст".
Про стили и форматирование не говорим, но помним, что Microsoft кое-где автоматически подставляет стили, может они уже присутствуют в "плохо отформатированном тексте"
у меня было гораздо более подробное ТЗ там еще формулы фигурировали - их надо было ровнять и нумеровать. Описать все можно - реализовать чертовски сложно. в особенности корректную обработку таблиц
bdfy вне форума Ответить с цитированием
Старый 29.09.2010, 15:38   #16
OlegVE
Форумчанин
 
Регистрация: 27.09.2010
Сообщений: 376
По умолчанию

Цитата:
Сообщение от bdfy Посмотреть сообщение
OlegVE да они знать же даже не будут про это рецензирование. правки в файле увидите потом только вы включив соотв. опцию.
Мне не нужны больше неприятности. :-( Если у него опять случайно выскочит рецензирование и он увидит........
Вам не приходилось делать калькуляцию по проекту в Excel, вставлять в Word, разрывать связь, отдавать в таком виде, возвращать в Excel и т.д. и т.п......и т.д. и т.п......и т.д. и т.п......

Цитата:
Сообщение от bdfy Посмотреть сообщение
OlegVE
у меня было гораздо более подробное ТЗ там еще формулы фигурировали - их надо было ровнять и нумеровать. Описать все можно - реализовать чертовски сложно. в особенности корректную обработку таблиц
По таблицам посмотрите:
1. http://www.programmingforum.ru/visua...tml#post757079
2. http://wordexpert.ru/page/raznos-dan...olbcam-tablicy
3. http://programmersforum.ru/showthread.php?t=46756
4. http://forum.ixbt.com/topic.cgi?id=23:38969
а теперь думаю то, что и для Вас (Часть 4) и для меня (много частей) полезно (отбрасывайте, например, WordDocument1. и в конце нужный объект, не смотрите что Delphi)
5. http://www.delphi.int.ru/articles/11/

Спасибо за Fields, а то на них смотрел-смотрел и не увидел ;-) Уже кое-что нашел. Также мне помогут Footnotes и Endnotes. Нашел и Captions, это те которые Название ("Рисунок", "Таблица", "Формула"). Для меня уже что-то стало вырисовываться: как найти, как заменить. Теперь надо глубже разбираться.

Спасибо всем за то, что показали дорогу.

До свидания.

PS Может пора тему закрывать, а может чуть-чуть поболтать :-). Завтра ещё разок загляну.

Последний раз редактировалось OlegVE; 29.09.2010 в 15:41. Причина: Правка
OlegVE вне форума Ответить с цитированием
Старый 08.10.2010, 21:50   #17
bdfy
Форумчанин
 
Регистрация: 12.11.2009
Сообщений: 258
По умолчанию

тоже озаботился как сделать Word без внешних ссылок.
Цитата:
Document.Range.Fields.Unlink
убьет абсолютно все ссылки. включая оглавление, автонумерацию и т.д. А как бы изничтожить только внешние ссылки ? т.е именно разорвать все связи внешние ?
bdfy вне форума Ответить с цитированием
Старый 11.10.2010, 18:56   #18
OlegVE
Форумчанин
 
Регистрация: 27.09.2010
Сообщений: 376
По умолчанию

Цитата:
Сообщение от bdfy Посмотреть сообщение
А как бы изничтожить только внешние ссылки ? т.е именно разорвать все связи внешние ?
Здравствуйте.
Посмотрите

http://www.planetaexcel.ru/forum.php?thread_id=4714

а потом

http://www.planetaexcel.ru/forum.php...llnum_forum=43


До свидания.

PS Иногда посещаю свой участок ;-)

Последний раз редактировалось OlegVE; 11.10.2010 в 18:59. Причина: Добавка или скорее правка
OlegVE вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Замена знаков сноски (цифр на звездочки) caute Microsoft Office Word 19 27.12.2009 10:34
сноски dima9 Microsoft Office Word 10 27.11.2009 09:57
как поменять местами концевые и обычные сноски caute Microsoft Office Word 2 25.11.2009 18:29
Смена кодировки названия открываемого файла в адресной строке при переходе на него по ссылки Adamant HTML и CSS 1 08.02.2008 18:51