Показать полную графическую версию : [решено] Разная нумерация старниц в одном документе
Всем привет! Помогите, пожалуйста, с разной нумерацией страниц. В рамке есть два окошка под нумера:сверху справа и снизу справа. вверху - номер с самого начала работы, а вот внизу - определённого раздела( Исследовательская часть - новый раздел). То есть на странице 85 в верхнем окошке должно быть написано 85, а в нижнем - 1, на следующей странице - 86 и 2 и т.д.
Самый незатейливый вариант - заходите в колонтитулы, жмете alt-f9 (при этом значения ваших номеров страниц будет отображаться в виде кодов - приблизительно "{PAGE \*MERGEFORMAT}".
Ставите курсор в то место, где должен быть ваш номер с особенной нумерацией, жмете сочетание ctrl+f9, получаете пару скобок {}. Жмете это сочетание два раза чтобы было {{}}.
Затем добиваете в эти готовые скобки {={page}+10}. Жмете alt-f9, чтобы отобразились значения вместо кодов.
В этом поле нумерация должна выдавать на 10 большие по значению, чем номер страницы. Прибавьте или отнимите нужную вам цифру (как я понимаю - {={page}-85})
Соответственно, возможно - в документ будет необходимо вставить разрывы разделов, чтобы колонтитулы были разные.
в произвольном месте документа пишем поле {set Delta{={FILLIN "Введите номер первой страницы"}}}
Номер получаем с помощью поля {=Delta+{page}-1} в колонтитуле (формула вбивается исходя из логики, что вы хотите получить - page нумерация страницы, Delta - разница которую вы закладываете).
Соответственно, если поставить курсор на первое поле и нажать F9, отобразится окно, в которое можно вбить значение для Delta, что будет удобнее, чем ковыряться в маленьком квадратике углового штампа, меняя число.
Удалось сделать первым способом, спасибо, а вот вторым не получается(.
ПРи нажати Ф9 ничего не просиходит
Кстати, минус один же не нужно писать
По идее
a_axe, вы владеете программой mathtype?
ПРи нажати Ф9 ничего не просиходит »
Ага, в моем посте опечатка в первом поле - закрывать строчку должны три фигурных скобочки: {set Delta{={FILLIN "Введите номер первой страницы"}}} , скобочки нужно ставить используя ctrl+f9.
Соответственно, если установить курсор внутри этой строчки и нажать f9, должно выскочить окошко, куда можно забить значение для Delta. Удобство спорное. По хорошему, поля можно подобрать так, что будет считать и автоматом.
Кстати, минус один же не нужно писать »
Зависит от того результата, который Вы хотите получить. (Обычно под Delta понимают сам номер, с которого должна начинаться нумерация, тогда -1 нужен. Все же от задачи зависит)
a_axe, вы владеете программой mathtype? »
К сожалению не владею, даже никогда не видел.
a_axe, спасибо, разобрался). Есть ещё вопрос. Мне нужно скопировать в отдельный файл ворда один из разделов диплома с полностью неизменным форматированием и колонтитулами. К сожалению, не получается так. Что посоветуете? П.С. стили экспортировал - не дало результата
a_axe, как подобрать, что бы автоматом считало?
a_axe, как подобрать, что бы автоматом считало? »
Sandre, в общем случае простого решения с полями не существует: либо у Вас сплошная нумерация, либо нумерация с единицы в каждом разделе.
Дабы не править числа в каждом разделе «ручками» каждый раз, когда меняется число страниц в разделах, можно использовать макрос такого вида:
Option Explicit
Sub ReNum()
Dim objSection As Section
Dim intPageCount As Integer
intPageCount = 0
For Each objSection In ThisDocument.Sections
With objSection
With .Headers.Item(wdHeaderFooterPrimary)
.LinkToPrevious = False
With .Range.Fields
.Add Range:=.Parent, Type:=wdFieldPage, PreserveFormatting:=False
.Parent.InsertBefore "=" & CStr(intPageCount) & "+"
.Add Range:=.Parent, Type:=wdFieldEmpty, PreserveFormatting:=False
End With
End With
intPageCount = intPageCount + .Range.Information(wdActiveEndAdjustedPageNumber)
With .Footers.Item(wdHeaderFooterPrimary)
.LinkToPrevious = False
With .PageNumbers
.RestartNumberingAtSection = True
.StartingNumber = 1
End With
.Range.Fields.Add Range:=.Range, Type:=wdFieldPage, PreserveFormatting:=False
End With
End With
Next
End Sub
Общий принцип следующий:
колонтитулы разделов отсоединены от предыдущих;
в нижнем колонтитуле ведётся нумерация по разделам, для чего для каждого из них нумерация страниц устанавливается в «Начинать с: 1»;
в верхнем колонтитуле ведётся сплошная нумерация, для чего используется вышеуказанный коллегой a_axe способ с вычисляемым полем {= …}, содержимым которого являются два слагаемых: «общая сумма страниц предыдущих разделов» и «номер страницы в текущем разделе».
Выглядит сие примерно так:
http://i.imgur.com/PwczMVI.png
http://i.imgur.com/8Mav0Jr.png
Если Вас подобное устроит, посмотрю на его адаптацию непосредственно к Вашему документу.
Мне нужно скопировать в отдельный файл ворда один из разделов диплома с полностью неизменным форматированием и колонтитулами. К сожалению, не получается так. Что посоветуете? »
Создать копию исходного документа, в которой удалить всё лишнее.
в общем случае простого решения с полями не существует »
ну как... вроде же работает рабоче-крестьянский вариант, только обновлять нужно вручную через F9, неудобно. По-сути аналогично вашему макросу, только через поля, и нумерация сквозная, а отнимаем мы от сквозной нумерации на каждой странице дельту, значение которой присваивается через поле в последней строчке раздела 1:
1. вставляем в книгу новый раздел, убираем в разделе 2 опцию "как в предыдущем" (чтобы колонтитулы для Раздела 1 и Раздела 2 были разными)
2. последней строчкой Раздела 1 (не в колонтитуле, а именно в основном тексте) пишем поле {set Delta{={page}}}
3. В колонтитуле Раздела 1 сверху пишем поле {page}
4. В колонтитуле Раздела 2 сверху также пишем поле {page}, в нижнем колонтитуле пишем {={page}-delta}
Результатом будет книга с непрерывной нумерацией сверху листа, и с нумерацией Раздела 2 снизу листа с отсчетом начиная с единицы.
Безусловным неудобством такого метода будет то, что поле {set Delta{={page}}} должно всегда находится на последней странице Раздела 1.
Обновлять каждый раз через F9 неудобно, можно использовать такой макрос:
Sub Field_update()
ActiveDocument.Fields.Update
End Sub
a_axe, я понимаю. А в третьем, четвёртом и так далее разделах — что пишем?
По сути же, выбор того или иного варианта основной нумерации будет зависеть от того, на какую именно нумерацию (сплошную или раздельную) ссылается в тексте документа коллега Sandre. Условно говоря, если стоит ссылка вида «см. рис. 5.1 "Очень красивый рисунок" на стр.18», то какую нумерацию должна будет использовать данная ссылка — ту и придётся выбрать в качестве основной, дабы эти кросс-ссылки работали.
Обновлять каждый раз через F9 неудобно, »
Достаточно однократно задать в параметрах обновление полей при печати и затем пользовать предварительный просмотр.
А в третьем, четвёртом и так далее разделах — что пишем? »
Свои переменные Delta1, Delta2, Delta3, я полагаю.
ту и придётся выбрать в качестве основной, дабы эти кросс-ссылки работали. »
Как я понимаю - через поля кросс-ссылки не реализовать?
Достаточно однократно задать в параметрах обновление полей при печати и затем пользовать предварительный просмотр. »
Спасибо, возьму на заметку ;).
Свои переменные Delta1, Delta2, Delta3, я полагаю. »
a_axe, спасибо, теперь полностью ясно.
Как я понимаю - через поля кросс-ссылки не реализовать? »
Ох, возни будет чересчур. Они ведь и так сами по себе полями организованы.
Iska, адаптировался, мягко говоря, не очень:пропали рамки во всех документах формалата ворд
Ещё пропали картинки в дипломе...
В режиме чтения видны, между прочим
Iska, адаптировался, мягко говоря, не очень: »
Sandre, так не было ещё никакой адаптации, я только спрашивал:
Если Вас подобное устроит, посмотрю на его адаптацию непосредственно к Вашему документу. »
Так что — пробуем адаптировать? Ответьте тогда: у Вас какая нумерация в дипломе является основной — сквозная или по-раздельная?
пропали рамки во всех документах формалата ворд »
Во всех — такого быть не может: там явно сказано — «ThisDocument».
Ещё пропали картинки в дипломе... »
Проверьте, что не установлен параметр Word'а «Пустые рамки рисунков».
Iska, не установлен параметр \\ Тем не менее, нигде не отражаются рамки.
Iska, я был бы Вам благодарен, если бы Вы отредактировали макрос под мой диплом. Правда, рамки есть не на всех страницах. Поэтому применение макроса должно приходиться на определённые разделы. \\ Что означает:"нумерация сквозная или отдельная"?
a_axe, у меня была идея сделать вариант с Ф9 таким образом: в конце диплома вставить пустую страницу и туда прописать delta для каждого раздела. Но как это реализовать...
у меня была идея сделать вариант с Ф9 таким образом: в конце диплома вставить пустую страницу и туда прописать delta для каждого раздела. »
Ну тут скорее в колонтитуле первого раздела следует прописать
{set Delta2{={sectionpages}}} (по-хорошему - сделайте первый колонтитул раздела "особым", и вбейте это поле в него. Требование это не обязательное, если значение Delta2 будет присваиваться в каждом колонтитуле Раздела 1, работать будет).
В колонтитуле Раздела 2 используете поле {={page}-Delta2}, и в этом же разделе прописываете значение для Delta3 для следующего Раздела 3 ({set Delta3{={sectionpages}}}), в Разделе3 используете поле {={page}-Delta3} и задаете {set Delta4{={sectionpages}}}и так далее для всех разделов.
Что означает:"нумерация сквозная или отдельная"
У вас в дипломе две нумерации: одна идет по порядку через все страницы документы, "насквозь" через все страницы документа, очевидно что она сквозная. Вторая - начинается заново для каждого раздела, отдельно от нумерации других разделов, очевидно, что она отдельная. Соответственно, вы должны определиться, какая из них "главнее".
у меня была идея сделать вариант с Ф9 таким образом: в конце диплома вставить пустую страницу и туда прописать delta для каждого раздела. »
Ну тут скорее в колонтитуле первого раздела следует прописать
{set Delta2{={sectionpages}}} (по-хорошему - сделайте первый колонтитул раздела "особым", и вбейте это поле в него. Требование это не обязательное, если значение Delta2 будет присваиваться в каждом колонтитуле Раздела 1, работать будет).
В колонтитуле Раздела 2 используете поле {={page}-Delta2}, и в этом же разделе прописываете значение для Delta3 для следующего Раздела 3 ({set Delta3{={sectionpages}}}), в Разделе3 используете поле {={page}-Delta3} и задаете {set Delta4{={sectionpages}}}и так далее для всех разделов.
Что означает:"нумерация сквозная или отдельная"
У вас в дипломе две нумерации: одна идет по порядку через все страницы документы, "насквозь" через все страницы документа, очевидно что она сквозная. Вторая - начинается заново для каждого раздела, отдельно от нумерации других разделов, очевидно, что она отдельная. Соответственно, вы должны определиться, какая из них "главнее".
Как быть с рамками? Они пропали
Iska, не установлен параметр \\ Тем не менее, нигде не отражаются рамки. »
Ну, тогда не знаю :).
Iska, я был бы Вам благодарен, если бы Вы отредактировали макрос под мой диплом. »
Я попробую.
Правда, рамки есть не на всех страницах. »
На каких страницах рамок нет? Есть какой-то общий принцип?
Поэтому применение макроса должно приходиться на определённые разделы. »
На какие именно разделы? Мне надо точно представлять обстоятельства применения макроса, дабы он отрабатывал корректно.
Что означает:"нумерация сквозная или отдельная"? »
Коллега a_axe дал выше точное разъяснение.
Как быть с рамками? Они пропали »
Вы документ уже успели сохранить с этими пропавшими рамками?
Нет, не сохранял. Рамки пропали абсолютно во всех документах. Хочу заметить, что в режиме чтения они пояаляются
Рамки пропали абсолютно во всех документах. »
Sandre, целиком пропали? И вертикальные линии (по длинной стороне листа) тоже? Или только штампы?
Я имею в виду - это не самый простой вариант, что редактируя колонтитул вы щелкнули мышкой между листиками и перешли в "компактный режим", когда не отображаются колонтитулы и расстояние между листами? У вас действительно не отображаются рамки (колонтитулы), верно?
a_axe, прикрепил скрин. Теперь так во всех документах
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.