powered by simpleCommunicator - 2.0.38     © 2025 Programmizd 02
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Сквозная нумерация ворд файлов через vba excel
8 сообщений из 8, страница 1 из 1
Сквозная нумерация ворд файлов через vba excel
    #39593253
SandraSidorova
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте! Подскажите, пожалуйста, если знаете..

Нужно обработать несколько ворд файлов, проставив номера страниц.
(номер первой страницы N+1 документа = последняя стр. N документа + 1)

есть макрос и он работает, но при условии, что в документе больше, чем одна страница

Код: vbnet
1.
2.
 wordapp.Selection.HeaderFooter.PageNumbers.RestartNumberingAtSection = True
 wordapp.Selection.HeaderFooter.PageNumbers.StartingNumber = PageNum + 1



Но если документ с одной страницей, то не меняет номер страницы.
...
Рейтинг: 0 / 0
Сквозная нумерация ворд файлов через vba excel
    #39593264
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Это явно не весь макрос
...
Рейтинг: 0 / 0
Сквозная нумерация ворд файлов через vba excel
    #39593269
SandraSidorova
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Shocker.Pro,

Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
   Set worddoc = wordapp.Documents.Open(путь к папке)
         worddoc.Application.Visible = True
         tttt = worddoc.ComputeStatistics(wdStatisticPages)

  For Each sec In worddoc.Sections
  If sec.Index = 1 Then
 
 sec.Range.Paragraphs(1).Range.Select
 With worddoc.ActiveWindow.View
  .SeekView = wdSeekCurrentPageFooter
    End With

' что-то изменить
 wordapp.Selection.HeaderFooter.PageNumbers.RestartNumberingAtSection = True
 wordapp.Selection.HeaderFooter.PageNumbers.StartingNumber = PageNum + 1 
  
  With worddoc.ActiveWindow.View
  .SeekView = wdSeekMainDocument
 End With

On Error GoTo 0
       
       wordapp.ScreenRefresh
    h = h
   Else
   sec.Headers(wdHeaderFooterEvenPages).PageNumbers.RestartNumberingAtSection = False
  End If
  Next sec
  PageNum = PageNum + tttt
           
 On Error Resume Next
          
  With worddoc.ActiveWindow.View
  .Type = wdPrintView
  .SeekView = wdSeekCurrentPageFooter
  wordapp.ScreenRefresh
  .Type = wdPrintView
  .SeekView = wdSeekMainDocument
 End With
On Error GoTo 0
         
 worddoc.Close savechanges:=wdSaveChanges




Код макроса очень длинный. Именно этот "кусок" работает с файлами .doc
...
Рейтинг: 0 / 0
Сквозная нумерация ворд файлов через vba excel
    #39593298
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Судя по всему, где-то выше приведенного кода есть On Error Resume Next
Возможно, при выполнении макроса при одной странице в документе возникает ошибка, но вы ее не видите и думаете, что номер страницы просто не меняется.
...
Рейтинг: 0 / 0
Сквозная нумерация ворд файлов через vba excel
    #39593314
SandraSidorova
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Shocker.Pro,
Спасибо, но Нет.. код этот не выдает ошибку.. Программа выполняет этот код
...
Рейтинг: 0 / 0
Сквозная нумерация ворд файлов через vba excel
    #39593320
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Тогда для чего там On Error GoTo 0?

Вообще, можно было бы посмотреть, в чем дело, если бы вы вычленили проблемный код в таком виде, чтобы можно было бы у себя запустить и посмотреть, а то теоретически его рассматривать как-то сложновато, а на воссоздание какого-то тестового окружения жалко времени. Ну и, естественно - файлы образцы - на котором работает и на котором не работает.
...
Рейтинг: 0 / 0
Сквозная нумерация ворд файлов через vba excel
    #39593340
Казанский
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
SandraSidorovaНужно обработать несколько ворд файлов, проставив номера страниц.
(номер первой страницы N+1 документа = последняя стр. N документа + 1)А нужно ли? Если собрать файлы в один мастер-документ (Вид - Структура - Показать документ - Вставить...), то нумерация страниц в мастер-документе будет сквозной - можно печатать или конвертить в PDF. В исходных файлах ничего не изменится.
...
Рейтинг: 0 / 0
Сквозная нумерация ворд файлов через vba excel
    #39594481
Bobgos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
SandraSidorova,
а зачем это условие?
Код: vbnet
1.
2.
3.
4.
5.
If sec.Index = 1 Then
'ставим номер страницы
else
   sec.Headers(wdHeaderFooterEvenPages).PageNumbers.RestartNumberingAtSection = False
  End If
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Сквозная нумерация ворд файлов через vba excel
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]