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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 21.03.2013, 16:06   #1
alexan0308
Пользователь
 
Регистрация: 22.08.2009
Сообщений: 46
По умолчанию Изменить размер шрифта нумерации страниц

Здравствуйте. Как добавить автоматически нумерацию страниц я представляю. Но как при этом указать шрифт и размер? и расположить на 2-3 мм пониже, так как иногда почему то "прилипает" к тексту.

Еще бы хотелось узнать параметры уже имеющейся нумерации. То есть основная задача сделать 12пт и Times New Roman, а если оно в документе таково и есть, не менять...

Узнать с помощью записи макроса не получается, блокируется поле номера страницы...
alexan0308 вне форума Ответить с цитированием
Старый 21.03.2013, 17:03   #2
Скрипт
Форумчанин
 
Регистрация: 24.12.2012
Сообщений: 776
По умолчанию

alexan0308, какая версия у вас программы "Word" - 2003, 2010 или другая?
Скрипт вне форума Ответить с цитированием
Старый 21.03.2013, 17:20   #3
alexan0308
Пользователь
 
Регистрация: 22.08.2009
Сообщений: 46
По умолчанию

Ну хотел бы чтобы работало во всех версия ворд, начиная с 2003... если в 2003 невозможно, то в 2010
alexan0308 вне форума Ответить с цитированием
Старый 21.03.2013, 17:47   #4
Скрипт
Форумчанин
 
Регистрация: 24.12.2012
Сообщений: 776
По умолчанию

Условия тестирования кода:
колонтитул в первом разделе в активном документе пустой.

Вставка номера страницы и прямое форматирование номера страницы (прямое форматирование - это форматирование текста без использования стилей):
Код:
Sub Procedure_1()

    Dim mySection As Word.Section
    Dim myPageNumberRange As Word.Range
    
    '1. Даём VBA-имя первому разделу в документе.
    Set mySection = ActiveDocument.Sections(1)
    
    '2. Вставляем виртуальную закладку "myPageNumberRange" 
        'в обычный нижний колонтитул (всего 3 вида колонтитулов).
    Set myPageNumberRange = mySection.Footers(wdHeaderFooterPrimary).Range
    
    '3. Вставляем в то место, где находится закладка, номер страницы.
        'Номер страницы - это "поле".
    'Часть кода получена с помощью макрорекордера.
    myPageNumberRange.Fields.Add Range:=myPageNumberRange, Type:=wdFieldEmpty, _
        Text:="PAGE", PreserveFormatting:=True
        
    '4. Форматируем фрагмент колонтитула, где находится виртуальная закладка.
    With myPageNumberRange
    
        .Font.Size = 12
        .Font.Name = "Times New Romans"
    
    End With

End Sub

Последний раз редактировалось Скрипт; 21.03.2013 в 20:44.
Скрипт вне форума Ответить с цитированием
Старый 21.03.2013, 17:49   #5
Скрипт
Форумчанин
 
Регистрация: 24.12.2012
Сообщений: 776
По умолчанию

Вставка номера страницы и применения к номеру страницы стиля "Номер страницы". Это позволит в дальнейшем, если вдруг будут изменения в оформлении документов, изменять не каждый номер страницы отдельно, а просто, изменив параметры стиля "Нижний колонтитул":
Код:
Sub Procedure_2()

    Dim mySection As Word.Section
    Dim myPageNumberRange As Word.Range
    
    Set mySection = ActiveDocument.Sections(1)
    Set myPageNumberRange = mySection.Footers(wdHeaderFooterPrimary).Range
    myPageNumberRange.Fields.Add Range:=myPageNumberRange, Type:=wdFieldEmpty, _
        Text:="PAGE", PreserveFormatting:=True
    
    'Форматируем стиль, который применим к номеру страницы.
    'Некоторые стили имеют специальные названия, что удобно использовать,
        'если макросу надо будет работать в программах "Word"
        'с разными языками.
    With ActiveDocument.Styles(wdStylePageNumber)
        .Font.Size = 12
        .Font.Name = "Times New Romans"
    End With
    
    'Применяем к фрагменту нижнего колонтитула, где находится
        'виртуальная закладка "myPageNumberRange", стиль "Нижний колонтитул".
    With myPageNumberRange
    
        .Style = ActiveDocument.Styles(wdStylePageNumber)
    
    End With

End Sub
Скрипт вне форума Ответить с цитированием
Старый 21.03.2013, 20:10   #6
alexan0308
Пользователь
 
Регистрация: 22.08.2009
Сообщений: 46
По умолчанию

Ок, спасиб.....
alexan0308 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Изменить размер шрифта в xml Aleksey1989 JavaScript, Ajax 2 05.03.2012 17:32
Вопрос по нумерации страниц xela1980 Microsoft Office Excel 4 04.04.2011 16:02
Восстановление нумерации страниц... Busine2009 Microsoft Office Word 0 07.06.2009 19:01
Размер шрифта Gorychev HTML и CSS 6 25.05.2008 11:42
изменить размер шрифта в свойстве “Caption” формы (Form) Борис2 Компоненты Delphi 8 13.09.2007 20:36