60 / 60 / 6
Регистрация: 07.09.2010
Сообщений: 259
|
|
1 | |
Коды полей: есть ли код "существует" ?18.10.2010, 08:36. Показов 3979. Ответов 21
Метки нет (Все метки)
документ состоит из секций, которые программно исчезаю из документа по определённым правилам
есть функция, подсчитывающая количество страниц каждой секции { количество_страниц_секции1 + количество_страниц_секции2 + .. } если закладка секции не найдена, то формула не высчитывается Word'ом... есть ли что-то нибудь наподбие if ( секция - существует ) делай то то, иначе 0 ключествое слово существует )) или может у кого какие соображения как сделать подругому?
0
|
18.10.2010, 08:36 | |
Ответы с готовыми решениями:
21
Коды/значение полей Коды/значения полей Коды полей EQ в OpenOffice Коды свойств полей таблицы |
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 |
так смысл в чём? В отображении на титульном листе количества страниц в документе?
0
|
60 / 60 / 6
Регистрация: 07.09.2010
Сообщений: 259
|
|
18.10.2010, 11:52 [ТС] | 7 |
ну я имел ввиду как в примере, на который я указал ссылку.
сейчас объясню по простому что там: 1. в секции документа делается поле, высчитывающее количество страниц в секции 2. на это поле делается закладка 3. в определённом месте вставляется поле, которое берёт числа с этих закладок и суммирует но если закладка не существует (секция удалена), то поле не считает. Я догадался, ребята! я программно буду генерировать код этого поля с суммой. Ну точнее сделаю так: в исходном файле будет вписана вся формула, а програмно удалю все ссылки, которые будут битыми. Но если есть решение как я хотел - чисто Word формулы, то будет здорово. Добавлено через 50 секунд количество страниц в документе, не учитывая некоторых секций документа.
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 |
0
|
60 / 60 / 6
Регистрация: 07.09.2010
Сообщений: 259
|
|
18.10.2010, 12:01 [ТС] | 10 |
5 определённых секций. Странный вопрос. Есть 17 секций в документе. Нужны для того, чтоб колонтитулы были разные. Количество страниц каждой секции тоже может быть абсолютно разным и не равно количеству в исходном (файл заполняется данными по тэгам).
Добавлено через 2 минуты С#.NET указатель на что?! у меня файл *.docx\word\document.xml открыт для обработки в коде. Там не подсчитаешь сколько это страниц. и да, я слышал про WorkProcessing в C#. Но тут нужно было делать так. Ну или не нужно, но блин. основа кода уже была сделана не мной.
0
|
Заблокирован
|
|
18.10.2010, 12:02 | 11 |
0
|
60 / 60 / 6
Регистрация: 07.09.2010
Сообщений: 259
|
|
18.10.2010, 12:03 [ТС] | 12 |
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 |
0
|
Заблокирован
|
|
18.10.2010, 12:06 | 15 |
servitola,
т.е. нужно подсчитать следующее: общее количество страниц в документе - количество страниц в 5 определённых секциях = выводим на титульный лист.
0
|
60 / 60 / 6
Регистрация: 07.09.2010
Сообщений: 259
|
|
18.10.2010, 12:08 [ТС] | 16 |
верно. но этих 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 | |
18.10.2010, 12:40 | |
Помогаю со студенческими работами здесь
20
Начать нумерацию страниц с... (коды полей) Вместо №стр.- отображаются коды полей! Коды ошибок аэрогриль POLARIS pag 1205d, У кого есть коды ошибок на аэрогриль POLARIS У меня есть файл и внутри этого файла есть код, я хочу его открыть в IDLE питон так, чтобы внутри код вывести Редактирование произвольной таблицы, если ряд полей таблиц содержит коды объектов из других таблиц Есть ли способ найти и удалить лишние коды в скрипте? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |