Vba word нумерация страниц

0 / 0 / 0

Регистрация: 21.10.2006

Сообщений: 7

1

25.08.2011, 15:05. Показов 12472. Ответов 11


Студворк — интернет-сервис помощи студентам

Как средствами VBA вставить номер страницы в клонтитул?
Вопрос кончно ламерский — но ответ нигде не смог найти…



0



mmos

4 / 4 / 2

Регистрация: 06.03.2011

Сообщений: 151

25.08.2011, 18:16

2

Visual Basic
1
2
3
4
Sub Макрос1()
  Selection.Sections(1).Footers(1).PageNumbers.Add PageNumberAlignment:= _
    wdAlignPageNumberRight, FirstPage:=True
End Sub



0



0 / 0 / 0

Регистрация: 21.10.2006

Сообщений: 7

28.08.2011, 15:14

 [ТС]

3

Спасибо!



0



0 / 0 / 0

Регистрация: 21.10.2006

Сообщений: 7

28.08.2011, 17:23

 [ТС]

4

Работает! Но больше хотелось бы вставить эту нумерацию не просто в нижний клонтитул, а в ячейку сформированной в нем таблицы (с самой таблицей проблем нет) и в виде … Страница из … Страниц.



0



Punkus

29.12.2011, 13:16

5

Selection.Fields.Add Range:=Selection.Range, Type:=wdFieldEmpty, Text:= «PAGE «, PreserveFormatting:=True

0 / 0 / 0

Регистрация: 03.01.2011

Сообщений: 48

29.12.2011, 16:43

6

А как сделать (без ВБА), если есть необходимость нумеровать начиная с 4 страницы — то есть первые три страницы — без нумерации, а дальше — 4, 5 и т.д.? В опциях (Вставка-номера страниц)есть только со второй (убрав галочку «номер на первой странице»).



0



3 / 3 / 0

Регистрация: 08.09.2011

Сообщений: 111

29.12.2011, 17:11

7

У меня все на аглицком, но русские аналоги можно подобрать…
Короче — (Вставка-номера страниц), далее нажать в выпавшем окошке Format (Формат наверное :-)) и выбрать пункт Start at (Начать с… или что-то подобное, не знаю как точно звучит в русской версии)



0



0 / 0 / 0

Регистрация: 03.01.2011

Сообщений: 48

29.12.2011, 17:16

8

Это понятно. Start at 4 page. Но нужно чтобы на предыдущих трех страницах отсутствовала нумерация — вот это как можно сд6лать?



0



3 / 3 / 0

Регистрация: 08.09.2011

Сообщений: 111

29.12.2011, 17:27

9

Цитата
Сообщение от abracadabra

Это понятно. Start at 4 page. Но нужно чтобы на предыдущих трех страницах отсутствовала нумерация — вот это как можно сд6лать?

Похоже, что без макроса никак :-(



0



0 / 0 / 0

Регистрация: 03.01.2011

Сообщений: 48

29.12.2011, 17:32

10

А как тогда с макросом?



0



3 / 3 / 0

Регистрация: 08.09.2011

Сообщений: 111

29.12.2011, 17:36

11

Если честно, я бы сохранил три первые страницы в отдельном файле без нумерации.
Ведь, как я понимаю, нумерация страниц имеет значение только в том случае, если документ распечатан. А распечатать можно и отдельно два файла..
Или есть более глубокий смысл именно такого порядка нумерации?



0



0 / 0 / 0

Регистрация: 03.01.2011

Сообщений: 48

29.12.2011, 17:47

12

Всё, нашёл. Вставляется нумерация, убарается галочка «номер на первой странице».
Потом после первой страницы Вставка-разрыв-новый раздел-со следующей страницы. потом — разрыв после второй и после третьей. И получается нумерация только на четвёртой и дальше.



0



  • Remove From My Forums
  • Question

  • I would just like to add page numbers to the bottom right hand side of each page in a Word document that I created using Visual Basic. 

    I would like the page numbers to have the following format:  «Page 1 of 5», «Page 2 of 5», etc.,

    Does anyone know how to do this?

    Thanks in advance,

    Jim


    James Hutchinson

Answers

  • >>>I would like the page numbers to have the following format:  «Page 1 of 5», «Page 2 of 5», etc.,

    Does anyone know how to do this?<<<

    According to your description, I suggest that you could refer to below code:

    Imports Word = Microsoft.Office.Interop.Word
    Module Module1
    
        Sub Main()
            Dim wordApp As Word.Application
    
            wordApp = New Word.Application()
    
            wordApp.Visible = True
    
            wordApp.Documents.Open("D:\yourdocname.docx")
    
            wordApp.ActiveDocument.Sections(wordApp.ActiveDocument.Sections.Count) _
            .Footers(Word.WdHeaderFooterIndex.wdHeaderFooterPrimary).Range.Select()
    
            With wordApp.Selection
                .Paragraphs(1).Alignment = Word.WdParagraphAlignment.wdAlignParagraphRight
                .TypeText(Text:="Page ")
                .Fields.Add(Range:=wordApp.Selection.Range, Type:=Word.WdFieldType.wdFieldEmpty, Text:= _
                    "PAGE ", PreserveFormatting:=True)
                .TypeText(Text:=" of ")
                .Fields.Add(Range:=wordApp.Selection.Range, Type:=Word.WdFieldType.wdFieldEmpty, Text:= _
                    "NUMPAGES ", PreserveFormatting:=True)
            End With
    
    
            wordApp.ActiveDocument.Save()
            wordApp.Quit()
            wordApp = Nothing
    
        End Sub
    
    End Module
    

    • Marked as answer by

      Wednesday, February 24, 2016 3:25 PM

Приветствую всех читателей блога scriptcoding.ru. В данной статье мы рассмотрим коллекцию PageNumbers и объекты PageNumber, входящих в объектную модель Word, которые отвечают за нумерацию страниц в ворде.

При подготовке данного материала я столкнулся с некоторыми нестыковками… Так, в большинстве случаев у коллекции PageNumbers будет только один класс PageNumber, это и логично, так как нельзя сделать несколько «нумераций» страниц для одного раздела. Вторая нестыковка – если нумерация страниц в ворде для верхнего колонтитула начинается с заданного номера, то это автоматически влияет и на нумерацию для нижнего колонтитула. С одной стороны это понятно, какой смысл задавать различную нумерацию для верхнего и нижнего колонтитула, но, непонятно следующее…

Доступ к коллекции PageNumbers осуществляется через одноименное свойство объекта HeaderFooter, а тот в свою очередь, мы получаем через свойства Headers или Footers класса Section. Как видим, мы можем указать, для какого колонтитула (верхнего или нижнего) нужно задавать нумерацию в Word.

Содержание

  1. Коллекция PageNumbers – нумерация в Word
  2. Свойства – нумерация страниц в Word
  3. Методы – как сделать нумерацию в ворде
  4. PageNumber – Нумерация в ворде
  5. Свойства – нумерация страниц в ворде
  6. Методы – как в ворде сделать нумерацию страниц

Коллекция PageNumbers – нумерация в Word

Свойства – нумерация страниц в Word

делаем нумерацию  в ворд

ChapterPageSeparator— Возвращает или устанавливает разделитель, используемый между номером главы и страницы. Значение константы WdSeparatorType:

  • wdSeparatorColon — 2 — двоеточие.
  • wdSeparatorEmDash — 3 — подчеркнутое тире.
  • wdSeparatorEnDash — 4 — стандартное тире.
  • wdSeparatorHyphen — 0 — дефис.
  • wdSeparatorPeriod — 1 — период.

HeadingLevelForChapter— Возвращает или задает уровень заголовка (от 0 до 8), который применяется к названиям глав в документе.

IncludeChapterNumber– Значение true, если номер главы входит в номера страниц. Чтение и запись.

NumberStyle— Возвращает или задает значение константы WdPageNumberStyle, которая представляет собой стиль нумерации страниц в Word.

RestartNumberingAtSection– Если значение свойства установлено в true, то при вызове метода Add нумерация в ворде будет начинаться с числа 0. Если значение false – то нумерация будет начинаться с числа одни, а попытка переопределить начальный пункт нумерации ворд страницы с помощью свойства StartingNumber ничего не даст. Чтение и запись.

ShowFirstPageNumber– Значение true – происходит автоматическое добавление пункта для нумерации Word страницы в нижний колонтитул.

StartingNumber— Возвращает или устанавливает значение, которое определяет начало нумерации страниц в ворде. Указанный номер может быть виден или не виден на первой странице в зависимости от установок свойства ShowFirstPageNumber. Если свойство RestartNumberingAtSection установлено в false, то будет происходить переопределение свойства StartingNumber так, чтобы нумерация в Word продолжалась из предыдущего раздела

Application— Возвращает объект Application, представляющий приложение Microsoft Word.

Count— Возвращает число номеров страниц в коллекции. В большинстве случаев, колонтитулы содержат только один номер страницы, который является числом 1.

Методы – как сделать нумерацию в ворде

делаем нумерацию в word

Add(PageNumberAlignment, FirstPage) — Возвращает класс PageNumber, представляющий номера, добавленные в верхний или нижний колонтитул раздела. Оба параметра являются дополнительными.

PageNumberAlignment – Определяет положение номера, значение константы WdPageNumberAlignment:

  • wdAlignPageNumberLeft — 0 – По левому краю.
  • wdAlignPageNumberCenter — 1 — По центру.
  • wdAlignPageNumberRight — 2 – По правому краю.
  • wdAlignPageNumberInside — 3 – По левому краю.
  • wdAlignPageNumberOutside — 4 – По правому краю.

FirstPage – Если установлено значение false, то номер не добавляется к первой странице. Если этот аргумент опущен, параметры нумерации в ворде определяет свойство DifferentFirstPageHeaderFooter класса PageSetup.

Item(index) – Доступ к объекту PageNumber по его номеру в коллекции PageNumbers. Фактически, количество классов PageNumber ровно 1.

PageNumber – Нумерация в ворде

Свойства – нумерация страниц в ворде

нумерация в ворде страниц

Alignment— Возвращает или задает выравнивание для номера страницы. Значение константы WdPageNumberAlignment (смотрите выше).

Application— Возвращает объект Application, представляющий приложение Microsoft Word.

Index– Позиция элемента в коллекции. Только чтение.

Методы – как в ворде сделать нумерацию страниц

нумерация в word страниц

Copy() — Копирует заданный PageNumber в буфер обмена.

Cut()— Вырезает указанный PageNumber из документа и помещает его в буфер обмена.

Delete() — Удаляет указанный PageNumber. Фактически, мы отменяем нумерацию в Word для выбранного колонтитула

Select() – Выбор указанного PageNumber. После использования этого метода, следует использовать свойство Selection для работы с выбранным элементом.

Хорошо, с теоретической частью мы закончили, теперь можно приступить к программированию. Я приведу два примера кода на языке VBScript и JScript сервера сценариев Windows Script Host:

Пример программного кода на языке VBSCRIPT:

' ----------------------------------------------------------------------------
' Коллекция PageNumbers и объекты PageNumber
' Нумерация в Word
' PageNumbers.vbs
' ----------------------------------------------------------------------------
Option Explicit
 
dim oWord, oDoc, i, MyText, oRange1, oRange2
 
Set oWord = CreateObject("Word.Application")
Set oDoc = oWord.Documents
oDoc.Add()
oDoc.Add()
oWord.Visible = true
Set oRange1 = oDoc(1).Range()                           
Set oRange2 = oDoc(2).Range()
 
MyText = "Нумерация в ворде. "
 
' Вставляем 6 страниц в первый документ
For i=0 to 6
     With oRange1
                 .InsertParagraph()
                 .EndOf
                 .InsertBreak()
     End With
Next
 
'-------------------------------------------------------------------------------------------------------------------
' Формируем нумерацию страниц в Word вместе с заголовками для первого документа
'-------------------------------------------------------------------------------------------------------------------
oDoc(1).Content.Style = -2
oDoc(1).Content.ListFormat.ApplyListTemplate oWord.ListGalleries(3).ListTemplates(7)
 
With oDoc(1).Sections(1).Headers(1).PageNumbers
    .Add 1, true
    .NumberStyle = 1
    .IncludeChapterNumber = True
    .HeadingLevelForChapter = 0
    .ChapterPageSeparator = 4
End With
'-------------------------------------------------------------------------------------------------------------------                                                                                                                                                                                                                                                                                                                               как сделать нумерацию в ворде
 
' Вставляем заданный текст во второй документ
For i=0 to 40
     With oRange2
                 .Text = MyText & MyText & MyText & MyText & MyText & MyText & MyText
                 .EndOf
                 .InsertParagraph()
                 .EndOf
     End With
Next
 
'-------------------------------------------------------------------------------------------------------------------
' Формируем нумерацию страниц в ворде вместе с заголовками для первого документа
'-------------------------------------------------------------------------------------------------------------------
With oDoc(2).Sections(1).Headers(1).PageNumbers
    .ShowFirstPageNumber = true
    .RestartNumberingAtSection = true
    .NumberStyle = 57
    .Add 0, true
    .StartingNumber = 5
End With

Пример программного кода на языке JSCRIPT:

// ----------------------------------------------------------------------------
// Коллекция PageNumbers и объекты PageNumber
// Нумерация в Word
// PageNumbers.js
// ----------------------------------------------------------------------------
var oWord1, oDoc1, i, MyText1, oRange1, oRange2;
 
oWord1 = WScript.CreateObject("Word.Application");
oDoc1 = oWord1.Documents;
oDoc1.Add();
oDoc1.Add();
oWord1.Visible = true;
oRange1 = oDoc1(1).Range();                           
oRange2 = oDoc1(2).Range();
 
MyText1 = "Нумерация в ворде. ";
 
// Вставляем 6 страниц в первый документ
for (i=0; i<=6; i++){
     with(oRange1){
                 InsertParagraph();
                 EndOf();
                 InsertBreak();
     }
}
 
//-------------------------------------------------------------------------------------------------------------------
// Формируем нумерацию страниц в Word вместе с заголовками для первого документа
//-------------------------------------------------------------------------------------------------------------------
oDoc1(1).Content.Style = -2;
oDoc1(1).Content.ListFormat.ApplyListTemplate (oWord1.ListGalleries(3).ListTemplates(7));
 
with (oDoc1(1).Sections(1).Headers(1).PageNumbers){
    Add(1, true);
    NumberStyle = 1;
    IncludeChapterNumber = true;
    HeadingLevelForChapter = 0;
    ChapterPageSeparator = 4;
}
//-------------------------------------------------------------------------------------------------------------------                                                                                                                                                                                                                                                                                                      как сделать нумерацию в ворде
 
// Вставляем заданный текст во второй документ
for (i=0; i<=40; i++){
     with(oRange2){
                 Text = MyText1 + MyText1 + MyText1 + MyText1 + MyText1 + MyText1 + MyText1;
                 EndOf();
                 InsertParagraph();
                 EndOf();
     }
}
 
//-------------------------------------------------------------------------------------------------------------------
// Формируем нумерацию страниц в ворде вместе с заголовками для первого документа
//-------------------------------------------------------------------------------------------------------------------
with (oDoc1(2).Sections(1).Headers(1).PageNumbers){
    ShowFirstPageNumber = true;
    RestartNumberingAtSection = true;
    NumberStyle = 57;
    Add(0, true);
    StartingNumber = 5;
}

В данных примерах происходит создание двух документов, для каждого документа создается ссылка на класс Range (переменные oRange1 и oRange2). Это нужно для того, что бы мы смогли добавить текст или страницы в нужный документ. Далее происходит нумерация страниц в Word для первого и второго документа. В одном случаем мы связываем нумерацию страниц в ворд со стилями и списками (в документ будут добавлены заголовки, а номера страниц будут с ними связаны). В другом случаем мы просто задаем стиль нумерация Word для всех страниц и определяем, что нумерация ворд должна начинаться с цифры 5.

Со времени написания этого сообщения я обзавелся более продвинутым способом нумерации, а этот пусть лежит для истории.

Что надо сделать? Проставить страницы у пачки .doc и docx файлов.
Что уже сделано для этого? В каждом файле уже есть колонтитулы с номерами страниц, просто каждый начинается с 1 страницы. Сами номера страниц заботливо сосчитаны кривеньким перл-скриптом и вписаны в заголовок .doc-файлов (в виде Название_файла+343+.doc)

Дальше начинает работать этот мелкий макрос, который считывает страницы из заголовка, и объясняет ворду что этот файл нужно нумеровать не с 1, после чего сохраняет файл и закрывает все за собой.

Sub numeration()
'
' numeration Macro
'
'
Dim temp As Variant
Dim author As String
Dim extension As String
Dim firstpage As Integer

temp = Split(ActiveDocument.Name, "+")

'Assigns values to variables
author = temp(0)
firstpage = temp(1)
extension = temp(2)

'firstpage = 5

With ActiveDocument
  Set oRng = .Sections(1).Headers(wdHeaderFooterPrimary)
    With oRng.PageNumbers
    .RestartNumberingAtSection = True
    .StartingNumber = firstpage
  End With
End With

 ActiveDocument.Save
Application.Quit

End Sub

При этом портятся некоторые колонтитулы, если стоит опция «отдельный колонтитулы первой страницы», или если файл состоит из одной страницы (нечетной), а по распределению ей выпадает четная. Чтобы этого всего избежать нужно чуть большее колдунство, то есть проставлять все колонтитулы этим же макросом. Возможно позже сделаю.

Ярлыки: Microsoft Office, Microsoft Word, MS Word macro, VBA


Ближайшие сообщения

Похожие сообщения

(Note: See below for solution.)

I have been trying to retrieve the page numbers from pages that various headings reside on in a word document using VBA. My current code returns either 2 or 3, and not the correctly associated page numbers, depending on where and how I use it in my main Sub.

astrHeadings = docSource.GetCrossReferenceItems(wdRefTypeHeading)

For Each hds In astrHeadings
        docSource.Activate
        With Selection.Find
            .Text = Trim$(hds)
            .Forward = True
            MsgBox hds & ":" & Selection.Information(wdActiveEndPageNumber), vbOKOnly
        End With
        Selection.Find.Execute
Next

docSource is a test document I have set up with 10 headings over 3 pages. I have the headings retrieved from the getCrossReferenceItems method in use later in my code.

What I am attempting is to loop through the results from the getCrossReferenceItems method and use each them in a Find object on docSource and from this ascertain what page the result is on. The page numbers will then be used in a string later in my code. This string plus page number will be added to another document which is created at the beginning of my main sub, everything else works a treat but this code segment.

Ideally what I need this segment to do is fill a second array with the associated page numbers from each Find result.

Problems Solved

Thanks Kevin you have been a great help here, I now have exactly what I need from the output of this Sub.

docSource is a test document I have set up with 10 headings over 3 pages.
docOutline is a new document which will act as a Table of Contents document.

I have had to use this Sub over Word’s built-in TOC features because:

  1. I have multiple documents to include, I could use the RD field to include these but

  2. I have another Sub which generates custom decimal page numbering in each document 0.0.0 (chapter.section.page representative) that, for the whole document package to make sense, need to be included in the TOC as page numbers. There probably is another way of doing this but I came up blank with Word’s built-in features.

This will become a Function to be included in my page numbering Sub. I am currently 3/4 of the way to completing this little project, the last quarter should be straightforward.

Revised and cleaned final Code

Public Sub CreateOutline()
' from http://stackoverflow.com/questions/274814/getting-the-headings-from-a-word-document
    Dim docOutline As Word.Document
    Dim docSource As Word.Document
    Dim rng As Word.Range
    Dim strFootNum() As Integer
    Dim astrHeadings As Variant
    Dim strText As String
    Dim intLevel As Integer
    Dim intItem As Integer
    Dim minLevel As Integer
    Dim tabStops As Variant

    Set docSource = ActiveDocument
    Set docOutline = Documents.Add

    minLevel = 5  'levels above this value won't be copied.

    ' Content returns only the
    ' main body of the document, not
    ' the headers and footer.
    Set rng = docOutline.Content
    astrHeadings = docSource.GetCrossReferenceItems(wdRefTypeHeading)

    docSource.Select
    ReDim strFootNum(0 To UBound(astrHeadings))
    For i = 1 To UBound(astrHeadings)
        With Selection.Find
            .Text = Trim(astrHeadings(i))
            .Wrap = wdFindContinue
        End With

        If Selection.Find.Execute = True Then
            strFootNum(i) = Selection.Information(wdActiveEndPageNumber)
        Else
            MsgBox "No selection found", vbOKOnly
        End If
        Selection.Move
    Next

    docOutline.Select

    With Selection.Paragraphs.tabStops
        '.Add Position:=InchesToPoints(2), Alignment:=wdAlignTabLeft
        .Add Position:=InchesToPoints(6), Alignment:=wdAlignTabRight, Leader:=wdTabLeaderDots
    End With

    For intItem = LBound(astrHeadings) To UBound(astrHeadings)
        ' Get the text and the level.
        ' strText = Trim$(astrHeadings(intItem))
        intLevel = GetLevel(CStr(astrHeadings(intItem)))
        ' Test which heading is selected and indent accordingly
        If intLevel <= minLevel Then
                If intLevel = "1" Then
                    strText = " " & Trim$(astrHeadings(intItem)) & vbTab & "1" & "." & "2" & "." & strFootNum(intItem) & vbCr
                End If
                If intLevel = "2" Then
                    strText = "   " & Trim$(astrHeadings(intItem)) & vbTab & "1" & "." & "2" & "." & strFootNum(intItem) & vbCr
                End If
                If intLevel = "3" Then
                    strText = "      " & Trim$(astrHeadings(intItem)) & vbTab & "1" & "." & "2" & "." & strFootNum(intItem) & vbCr
                End If
                If intLevel = "4" Then
                    strText = "         " & Trim$(astrHeadings(intItem)) & vbTab & "1" & "." & "2" & "." & strFootNum(intItem) & vbCr
                End If
                If intLevel = "5" Then
                    strText = "            " & Trim$(astrHeadings(intItem)) & vbTab & "1" & "." & "2" & "." & strFootNum(intItem) & vbCr
                End If
            ' Add the text to the document.
            rng.InsertAfter strText & vbLf
            docOutline.SelectAllEditableRanges
            ' tab stop to set at 15.24 cm
            'With Selection.Paragraphs.tabStops
            '    .Add Position:=InchesToPoints(6), _
            '    Leader:=wdTabLeaderDots, Alignment:=wdAlignTabRight
            '    .Add Position:=InchesToPoints(2), Alignment:=wdAlignTabCenter
            'End With
            rng.Collapse wdCollapseEnd
        End If
    Next intItem
End Sub

Private Function GetLevel(strItem As String) As Integer
    ' from http://stackoverflow.com/questions/274814/getting-the-headings-from-a-word-document
    ' Return the heading level of a header from the
    ' array returned by Word.

    ' The number of leading spaces indicates the
    ' outline level (2 spaces per level: H1 has
    ' 0 spaces, H2 has 2 spaces, H3 has 4 spaces.

    Dim strTemp As String
    Dim strOriginal As String
    Dim intDiff As Integer

    ' Get rid of all trailing spaces.
    strOriginal = RTrim$(strItem)

    ' Trim leading spaces, and then compare with
    ' the original.
    strTemp = LTrim$(strOriginal)

    ' Subtract to find the number of
    ' leading spaces in the original string.
    intDiff = Len(strOriginal) - Len(strTemp)
    GetLevel = (intDiff / 2) + 1
End Function

This code is now producing (What it should be according to my headings specification found in test-doc.docx):

This is heading one                  1.2.1
  This is heading two                1.2.1
    This is heading two.one          1.2.1
    This is heading two.three        1.2.1
This is heading one.two              1.2.2
     This is heading three           1.2.2
        This is heading four         1.2.2
           This is heading five      1.2.2
           This is heading five.one  1.2.3
           This is heading five.two  1.2.3

In Addition to this I have solved the ActiveDocument switching issue by using docSource.select and docOutline.Select statements instead of using.Active.

Thanks again Kevin, greatly appreciated :-)

Phil

Алексей задал вопрос:

Как программно определить номер текущей страницы? Единственное, до чего я додумался — по проценту скробара. Но правильно ли это?

В VBA есть две константы, по которым можно определить номер текущей страницы:

  • wdActiveEndPageNumber
  • wdActiveEndAdjustedPageNumber

Первая константа wdActiveEndPageNumber используется тогда, когда в документе нумерация начинается с первого номера (нормальная нумерация), а вторая — wdActiveEndAdjustedPageNumber — если пользователь использует свою нумерацию документа (не с первого по порядку листа документа).

Как я полагаю, в случае Алексея нужно узнать номер текущей страницы, на которой находится курсор ввода и нумерация страниц правильная. Вот примерный код:

Sub currentPage()
Dim pn As String
pn = Selection.Information(wdActiveEndPageNumber)
MsgBox pn
End Sub
Talker
Новичок
Новичок
 
Сообщения: 30
Зарегистрирован: 07.05.2006 (Вс) 21:17

Номер страницы в Word через VBA

Пишу программку, которая должна обработать построчно (попараграфно) весь документ кроме первой страницы. Как при переборе параграфов узнать на какой странице я нахожусь? Просмотрел все свойства из Document — ничего не нашёл. Но где-то же это должно быть? :)


GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 20.05.2006 (Сб) 15:44

А я сразу нашёл :scratch:

Что-то я всё-таки сделал неправильно :roll:

range.information(wdActiveEndPageNumber)

Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас


Talker
Новичок
Новичок
 
Сообщения: 30
Зарегистрирован: 07.05.2006 (Вс) 21:17

Сообщение Talker » 20.05.2006 (Сб) 17:07

Как всё просто :D Спасибо.



Вернуться в VBA

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1

Like this post? Please share to your friends:
  • Vba word поля страницы
  • Vba word номер ячейки таблицы
  • Vba word поля документа
  • Vba word номер строки
  • Vba word положение курсора