Como você faz valores de incremento automático em cabeçalhos?

1

Eu criei uma macro que adiciona uma página no final de um documento e altera o texto do título no cabeçalho. Quero poder adicionar várias páginas e ter a letra no incremento automático do título:

PROGRAMAÇÃO 'A'
PROGRAMAÇÃO 'B'
PROGRAMAÇÃO 'C'
etc.

Eu tentei usar um campo AUTONUM, mas recebi uma notificação que dizia: " Somente documento principal. "

Sub AddSchedule()
'
' AddSchedue Macro
' Press Ctrl+End to add a schedule to a Policy.
'

    Selection.EndKey Unit:=wdStory
    Selection.InsertBreak Type:=wdSectionBreakNextPage
    ActiveWindow.ActivePane.View.SeekView = wdSeekCurrentPageHeader
' Unlink Header from Previous - Is this necessary? The macro seems to work without it...   
    Selection.Tables(1).Cell(Row:=1, Column:=2).Range.Text = "SCHEDULE '"
    Selection.Tables(1).Cell(Row:=1, Column:=2).Range.Select
    Selection.Collapse Direction:=wdCollapseEnd
    Selection.MoveEnd Unit:=wdCharacter, Count:=-1
    Selection.Fields.Add Range:=Selection.Range, Type:=wdFieldEmpty, Text:= _
        "AUTONUM  \* ALPHABETIC \s ' ", PreserveFormatting:=False
    ActiveWindow.ActivePane.View.SeekView = wdSeekMainDocument


End Sub

Como faço para que os títulos das minhas páginas sejam incrementados automaticamente nos cabeçalhos?

Além disso, supus que precisava desvincular meus cabeçalhos do anterior em minha macro. Eu não consegui fazer essa parte funcionar, mas com a exceção de os campos não funcionarem direito, tudo parece funcionar muito bem. O cabeçalho exibe o novo título, apesar de dizer que ainda está vinculado. Eu deveria deixar isso? Ou como eu iria sobre desvendar meus cabeçalhos? Eu tentei usar:

Selection.HeaderFooter.LinkToPrevious = False

Mas isso me dá esse erro de execução:

The method or property is not available because the current selection is locked for format changes

    
por ShemSeger 25.08.2016 / 20:23

1 resposta

0

Você pode conseguir isso sem uma macro usando um campo calculado no seu cabeçalho - você estava muito próximo do uso do campo de seção. Só precisa subtrair 2 para exibir o valor correto.

O cabeçalho da seção 3 precisaria ser desvinculado da seção anterior antes de você inserir o campo, mas as seções subsequentes poderiam ser vinculadas e o número da programação seria atualizado automaticamente (por exemplo, na seção 4, o cabeçalho diria Agenda 2).

    
por 23.09.2016 / 00:24