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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 26.05.2009, 08:23   #1
Busine2009
Новичок
Джуниор
 
Регистрация: 23.05.2009
Сообщений: 167
По умолчанию Работа с несколькими документами одновременно

Есть такая ситуация.

У меня есть 10 файлов, в которых нужно установить одинаковые параметры страницы и одинаковые коллонтитулы.

Можно ли одним движением руки сделать параметры страницы одинаковыми для всех 10 файлов, ну и чтобы с колонтитулами было тоже все чики-пики?

Я на эту тему еще ничего не искал и не смотрел.
Busine2009 вне форума Ответить с цитированием
Старый 26.05.2009, 09:15   #2
viter.alex
Балуюсь кодами
Участник клуба
 
Аватар для viter.alex
 
Регистрация: 09.01.2009
Сообщений: 1,837
По умолчанию

На будущее для таких случаев нужно использовать шаблон.
Сделать можно, но не одним движением руки, а нексколькими. Для этого нужно знать, откуда брать колонтитулы и размеры страницы.
Лучше день потерять — потом за пять минут долететь!©
viter.alex вне форума Ответить с цитированием
Старый 26.05.2009, 09:23   #3
Busine2009
Новичок
Джуниор
 
Регистрация: 23.05.2009
Сообщений: 167
По умолчанию

Цитата:
Сообщение от viter.alex Посмотреть сообщение
На будущее для таких случаев нужно использовать шаблон.
Сделать можно, но не одним движением руки, а нексколькими. Для этого нужно знать, откуда брать колонтитулы и размеры страницы.
Мне предоставляют документы, я их не создаю.

Не напишешь код?
Busine2009 вне форума Ответить с цитированием
Старый 26.05.2009, 09:26   #4
viter.alex
Балуюсь кодами
Участник клуба
 
Аватар для viter.alex
 
Регистрация: 09.01.2009
Сообщений: 1,837
По умолчанию

Цитата:
Сообщение от Busine2009 Посмотреть сообщение
Не напишешь код?
Может и напишу. Но нужно знать, что вы хотите видеть в колонтитулах и какие поля вы хотите установить.
Лучше день потерять — потом за пять минут долететь!©
viter.alex вне форума Ответить с цитированием
Старый 26.05.2009, 21:45   #5
Busine2009
Новичок
Джуниор
 
Регистрация: 23.05.2009
Сообщений: 167
По умолчанию

Цитата:
Сообщение от viter.alex Посмотреть сообщение
Может и напишу. Но нужно знать, что вы хотите видеть в колонтитулах и какие поля вы хотите установить.
Да любые слова, и любые поля
Busine2009 вне форума Ответить с цитированием
Старый 27.05.2009, 10:13   #6
viter.alex
Балуюсь кодами
Участник клуба
 
Аватар для viter.alex
 
Регистрация: 09.01.2009
Сообщений: 1,837
По умолчанию

Откройте в Word все документы, в которых требуется установить колонтитулы и поля. Должны быть открыты только эти документы и никакие другие. Макрос нужно поместить в Normal.dot.
Код:
Sub SetHeadersFootersAndMargins()
  Dim oDoc As Document
  For Each oDoc In Documents
    'Задаем текст верхнего колонтитула для первого раздела
    oDoc.Sections(1).Headers(wdHeaderFooterPrimary).Range.Text = "Верхний Колонтитул"
    'Задаем текст нижнего колонтитула для первого раздела
    oDoc.Sections(1).Footers(wdHeaderFooterPrimary).Range.Text = "Нижний Колонтитул"
    'Устанавливаем границы страницы для всего документа
    With oDoc.PageSetup
      .LeftMargin = CentimetersToPoints(2.5)
      .RightMargin = CentimetersToPoints(1.5)
      .TopMargin = CentimetersToPoints(1)
      .BottomMargin = CentimetersToPoints(1)
    End With
  Next
End Sub
Лучше день потерять — потом за пять минут долететь!©

Последний раз редактировалось viter.alex; 27.05.2009 в 10:57.
viter.alex вне форума Ответить с цитированием
Старый 02.06.2009, 21:30   #7
Busine2009
Новичок
Джуниор
 
Регистрация: 23.05.2009
Сообщений: 167
По умолчанию

Не во всех случаях работает. Вот файл, где не работает.
Вложения
Тип файла: doc Doc2.doc (25.5 Кб, 10 просмотров)
Busine2009 вне форума Ответить с цитированием
Старый 02.06.2009, 22:07   #8
viter.alex
Балуюсь кодами
Участник клуба
 
Аватар для viter.alex
 
Регистрация: 09.01.2009
Сообщений: 1,837
По умолчанию

Конечно, не работает, потому что в документе несколько разделов. Попробуйте сделать сами, чтобы работало вне зависимости от количества разделов в документе.
Подсказка: Цикл перечисления For Each … Next и коллекция Sections
Лучше день потерять — потом за пять минут долететь!©
viter.alex вне форума Ответить с цитированием
Старый 03.06.2009, 20:23   #9
Busine2009
Новичок
Джуниор
 
Регистрация: 23.05.2009
Сообщений: 167
По умолчанию

Sub SetHeadersFootersAndMargins()
'Устанавливаем границы страницы для всего документа
With oDoc.PageSetup
.LeftMargin = CentimetersToPoints(2.5)
.RightMargin = CentimetersToPoints(1.5)
.TopMargin = CentimetersToPoints(1)
.BottomMargin = CentimetersToPoints(1)
End With
Next
End Sub

Вот эта часть не работает в представленном файле.

Если я создаю новый документ и делаю в нем разрывы разделов, то работает, а вот в этом документе не работает.
Busine2009 вне форума Ответить с цитированием
Старый 03.06.2009, 20:43   #10
viter.alex
Балуюсь кодами
Участник клуба
 
Аватар для viter.alex
 
Регистрация: 09.01.2009
Сообщений: 1,837
По умолчанию

Busine2009, все-таки вы очень ленивый.
Почитайте справку и завтра мне скажете, почему эта часть не работает.
Лучше день потерять — потом за пять минут долететь!©
viter.alex вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Одновременная работа с несколькими портами через ServerSocket Sane2k Работа с сетью в Delphi 16 06.03.2009 17:24
Запуск своего приложения одновременно с другим Sauronb|4 Общие вопросы Delphi 1 19.10.2008 18:45
Одновременно делать 2 действия(showmessage и ShellEzecute) Ozerich Общие вопросы Delphi 2 29.08.2008 08:16
Изменять файл нескольким пользователям одновременно asale Microsoft Office Excel 2 20.04.2008 23:49
сохранить ланные в файл и распечатать одновременно. CaHeK Общие вопросы Delphi 5 07.04.2008 21:41