1

Проще говоря, наш офис использует MS Word для своей учебной документации. Когда я начал вставлять большое количество фотографий, это привело к тому, что форматирование Word прервалось самыми расстраивающими способами. Поскольку я полон идей, я предложил перейти к Publisher, что упрощает управление текстом и изображениями.

Конечно, наш технический писатель сразу же наткнулся на контрольно-пропускной пункт. MS Word позволяет автоматически нумеровать заголовки страниц, как номер текущей страницы, так и общее количество страниц. Например "Страница 1 из 3"

MS Publisher поддерживает только автоматическую нумерацию страниц, не более того. Я посмотрел в Интернете и нашел краткий макрос VBA для этой самой проблемы:

https://answers.microsoft.com/en-us/msoffice/forum/msoffice_other-mso_other-mso_2010/display-page-numbers-in-ms-publisher-2010/499026db-0f47-46a8-8f96-6ee0b0ca7d46

Dim strPageNumber As String
Dim x As Integer
For x = 1 To Pages.Count
    With ActiveDocument.Pages(x)
        strPageNumber = .PageNumber
        .Shapes.AddTextbox(Orientation:=pbTextOrientationHorizontal, _
            Left:=710, Top:=580, Width:=80, Height:=20) _
            .TextFrame.TextRange.InsertAfter NewText:="Page " _
            & strPageNumber & " of " & .Parent.Count & "."
    End With
Next x

Я вижу, что создается текстовое поле, которое кажется ненужным. Разве нельзя будет использовать VBA Macro, чтобы просто вставить общее количество страниц автоматически в документ, который я выбрал?

К сожалению, я понятия не имею, как это реализовать. Похоже, это серьезный недосмотр со стороны Microsoft.

На данный момент, план состоит в том, чтобы перейти к последней странице, получить номер страницы и отредактировать номер "of" в мастере вручную. Супер неловко.

0