С Новым годом! Форум программистов, компьютерный форум, киберфорум
MS Office Word
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.58/19: Рейтинг темы: голосов - 19, средняя оценка - 4.58
60 / 60 / 6
Регистрация: 07.09.2010
Сообщений: 259
1

Коды полей: есть ли код "существует" ?

18.10.2010, 08:36. Показов 3979. Ответов 21
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
документ состоит из секций, которые программно исчезаю из документа по определённым правилам

есть функция, подсчитывающая количество страниц каждой секции
{ количество_страниц_секции1 + количество_страниц_секции2 + .. }

если закладка секции не найдена, то формула не высчитывается Word'ом...

есть ли что-то нибудь наподбие if ( секция - существует ) делай то то, иначе 0
ключествое слово существует ))
или может у кого какие соображения как сделать подругому?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
18.10.2010, 08:36
Ответы с готовыми решениями:

Коды/значение полей
Здраствуйте, нужна помощь с продуктом Ворд 2016, Нужно сделать следующее: найти ряд одного слова ,...

Коды/значения полей
При редактировании текста в разных местах находятся слова, с которыми при работе происходит...

Коды полей EQ в OpenOffice
Собственно сабж. Кто-нибудь сталкивался или слышал про аналог кодов полей EQ от MS в OpenOffice?

Коды свойств полей таблицы
Делаю так Dim db As Database ' бд Dim Tbl As TableDef ' таблица Dim Fld As Field ' поле Dim...

21
4226 / 1796 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
18.10.2010, 08:59 2
Я не знаю вообще ни одного языка программирования, в котором бы был оператор проверки существования объекта. Вместо этого всегда проверяется допустимость указателя на объект. То есть, если динамический объект существует, то где то указатель на него не равен специальной константе универсальноуказательного типа, это неравенство и проверяется. Но про вордовые макросы я не в курсе, может там и не через объекты, а через эквивалент файловых записей, но и в этом случае не нужен ни какой специальный оператор проверки существования, а просто перебирай по нееофу все секции, каждый раз работай с текущей секцией, а общую сумму постепенно накапливай в счётчике.
0
Заблокирован
18.10.2010, 09:43 3
servitola,
а в чём вообще смысл?
0
60 / 60 / 6
Регистрация: 07.09.2010
Сообщений: 259
18.10.2010, 11:29  [ТС] 4
нет. макрос - антивариант.

подходит данный вариант подсчёта количества страниц в секциях.
Использование полей для подсчета количества страниц в нескольких разделах
плюс ко всему - не нужно количество страниц всех секций.

docx файл обрабатывается как XMLка. вытаскивается файл document.xml и преобразуется.
(не вините меня - так ведущий программист начал делать, а я только в этот проект вклинился. ну и доделал на XMLNode весь код)
в общем он преобразуется и многие секции удаляются.
а на титульном листе должно отобразиться количество страниц документа.
способ выше работает, но разваливается, если есть ссылка на секцию, которой больше нет.
0
4226 / 1796 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
18.10.2010, 11:39 5
Ссылка на удалённую секцию? Это как? Может всё таки указатель?
0
Заблокирован
18.10.2010, 11:49 6
Цитата Сообщение от servitola Посмотреть сообщение
а на титульном листе должно отобразиться количество страниц документа.
так смысл в чём? В отображении на титульном листе количества страниц в документе?
0
60 / 60 / 6
Регистрация: 07.09.2010
Сообщений: 259
18.10.2010, 11:52  [ТС] 7
ну я имел ввиду как в примере, на который я указал ссылку.
сейчас объясню по простому что там:
1. в секции документа делается поле, высчитывающее количество страниц в секции
2. на это поле делается закладка
3. в определённом месте вставляется поле, которое берёт числа с этих закладок и суммирует

но если закладка не существует (секция удалена), то поле не считает.

Я догадался, ребята! я программно буду генерировать код этого поля с суммой.
Ну точнее сделаю так: в исходном файле будет вписана вся формула, а програмно удалю все ссылки, которые будут битыми.

Но если есть решение как я хотел - чисто Word формулы, то будет здорово.

Добавлено через 50 секунд
Цитата Сообщение от Busine2009 Посмотреть сообщение
так смысл в чём? В отображении на титульном листе количества страниц в документе?
количество страниц в документе, не учитывая некоторых секций документа.
0
4226 / 1796 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
18.10.2010, 11:54 8
Нафига?
s=0,
потом в цикле по секциям s=s+очередное слагаемое, выполнять только если указатель не равен специальному значению. Ты на чём пишешь (от этого зависит синтаксис такой проверки)?
0
Заблокирован
18.10.2010, 11:55 9
Цитата Сообщение от servitola Посмотреть сообщение
не учитывая некоторых секций документа.
какие секции не надо учитывать?
0
60 / 60 / 6
Регистрация: 07.09.2010
Сообщений: 259
18.10.2010, 12:01  [ТС] 10
Цитата Сообщение от Busine2009 Посмотреть сообщение
какие секции не надо учитывать?
5 определённых секций. Странный вопрос. Есть 17 секций в документе. Нужны для того, чтоб колонтитулы были разные. Количество страниц каждой секции тоже может быть абсолютно разным и не равно количеству в исходном (файл заполняется данными по тэгам).

Цитата Сообщение от taras atavin Посмотреть сообщение
Нафига?
s=0,
потом в цикле по секциям s=s+очередное слагаемое, выполнять только если указатель не равен специальному значению. Ты на чём пишешь (от этого зависит синтаксис такой проверки)?
Добавлено через 2 минуты
С#.NET
указатель на что?! у меня файл *.docx\word\document.xml открыт для обработки в коде. Там не подсчитаешь сколько это страниц.


и да, я слышал про WorkProcessing в C#. Но тут нужно было делать так. Ну или не нужно, но блин. основа кода уже была сделана не мной.
0
Заблокирован
18.10.2010, 12:02 11
Цитата Сообщение от servitola Посмотреть сообщение
5 определённых секций.
а эти секции постоянные? Они не удаляются?
0
60 / 60 / 6
Регистрация: 07.09.2010
Сообщений: 259
18.10.2010, 12:03  [ТС] 12
Цитата Сообщение от Busine2009 Посмотреть сообщение
а эти секции постоянные? Они не удаляются?
могут удалиться, могут нет.
0
4226 / 1796 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
18.10.2010, 12:03 13
Указателем называется целое специального вида, предназначенное для хранения адреса данных определённого типа, а ссылкой указатель специального вида, синтаксис которого идентичен синтаксису объекта, на который он указывает.
0
60 / 60 / 6
Регистрация: 07.09.2010
Сообщений: 259
18.10.2010, 12:05  [ТС] 14
Цитата Сообщение от taras atavin Посмотреть сообщение
Указателем называется целое специального вида, предназначенное для хранения адреса данных определённого типа, а ссылкой указатель специального вида, синтаксис которого идентичен синтаксису объекта, на который он указывает.
не очень понимаю что ты хочешь подсказать.
0
Заблокирован
18.10.2010, 12:06 15
servitola,
т.е. нужно подсчитать следующее:
общее количество страниц в документе - количество страниц в 5 определённых секциях = выводим на титульный лист.
0
60 / 60 / 6
Регистрация: 07.09.2010
Сообщений: 259
18.10.2010, 12:08  [ТС] 16
Цитата Сообщение от Busine2009 Посмотреть сообщение
servitola,
т.е. нужно подсчитать следующее:
общее количество страниц в документе - количество страниц в 5 определённых секциях = выводим на титульный лист.
верно. но этих 5 секций может не быть. Или некоторые. Все варианты могут быть.
ну да, формула: Все странцы минус все страницы определённых секций.
0
Заблокирован
18.10.2010, 12:09 17
servitola,
надо подумать тогда и посмотреть в интернете что-нибудь.
0
60 / 60 / 6
Регистрация: 07.09.2010
Сообщений: 259
18.10.2010, 12:12  [ТС] 18
ну пока не нашёл.
есть разные функции в Word
например:
Коды полей: IF
но как битые ссылки не учитывать не знаю
0
Заблокирован
18.10.2010, 12:36 19
servitola,
т.е. когда удаляется постоянный раздел, то вместе с ним удаляется и закладка и на титульном листе появляется "!Синтаксическая ошибка, !"?
В этом проблема?
0
60 / 60 / 6
Регистрация: 07.09.2010
Сообщений: 259
18.10.2010, 12:40  [ТС] 20
Busine2009,
да, в этом.
0
18.10.2010, 12:40
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
18.10.2010, 12:40
Помогаю со студенческими работами здесь

Начать нумерацию страниц с... (коды полей)
Не могу понять... Если просто вставить в документ номер страницы через меню "Вставка - Поле", то...

Вместо №стр.- отображаются коды полей!
Здравствуйте! При попытке пронумеровать страницы,- отображаются коды полей. Обновить поле - не...

Коды ошибок аэрогриль POLARIS pag 1205d, У кого есть коды ошибок на аэрогриль POLARIS
аэрогриль POLARIS pag 1205d ошибка e1 че значит?

У меня есть файл и внутри этого файла есть код, я хочу его открыть в IDLE питон так, чтобы внутри код вывести
У меня есть файл и внутри этого файла есть код, я хочу его открыть в IDLE питоне так, чтобы код...

Редактирование произвольной таблицы, если ряд полей таблиц содержит коды объектов из других таблиц
Уважаемые, Гуру! Хотелось бы построить редактор произвольной таблицы БД. Загрузка таблицы "select...

Есть ли способ найти и удалить лишние коды в скрипте?
Программист сделал сайт, который работает нормально, но в нем навешано настолько много CSS и JS,...


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru