Do Básico ao Avançado
Home | Tutoriais | Artigos |Contato

Home > VBA > Inserir texto no rodapé do documento


Inserir texto no rodapé do documento



Neste tutorial criaremos uma macro para Inserir texto no rodapé do documento. Criaremos diretamente através do Editor do Visual Basic a macro que automatiza a inserção de texto no rodapé de um documento.


No documento, mostrado na imagem abaixo, iremos adicionar um texto em seu rodapé.


Texto no Word


Vamos, então, criar a macro (código VBA) que irá adicionar o texto ao rodapé do documento de forma automática.


Na Guia Desenvolvedor, no Grupo Código clique em Visual Basic.


Visual Basic


No ambiente de desenvolvimento VBA clique no menu Inserir e em seguida clique em Módulo.


Inserir Módulo


Na Janela de Código adicione o seguinte código:


Sub textonorodape()
Dim myText As Range
WordBasic.ViewFooterOnly
For Each myText In ActiveDocument.StoryRanges
Select Case myText.StoryType
Case Is = 8, 9, 11
Do
myText.Collapse Direction:=wdCollapseEnd
myText.InsertAfter vbCr & "Digite seu texto aqui"
Selection.ParagraphFormat.Alignment = wdAlignParagraphRight
Set myText = myText.NextStoryRange
Loop Until myText Is Nothing
Case Else
End Select

Next
ActiveWindow.ActivePane.View.SeekView = wdSeekMainDocument
End Sub



Ficará como na imagem abaixo:


Janela de Código


Agora feche o Editor do Visual Basic para voltar ao documento através do menu Arquivo >> Fechar e voltar para Microsoft Word.


Fechar Editor do VBA


Salve o documento como Documento Habilitado para Macro do Word, em seguida acione a Guia Desenvolvedor e no Grupo Código clique em Macros.


Macros


Selecione a macro textonorodape e clique em Executar.


Executar macro


Veja o resultado:


Texto no rodapé






Considerações Finais:


Para alterar o alinhamento do texto inserido rodapé, basta alterar a propriedade de alinhamento do parágrafo na linha de código correspondente.


Alinhamento à esquerda:

Selection.ParagraphFormat.Alignment = wdAlignParagraphLeft



Alinhamento centralizado:

Selection.ParagraphFormat.Alignment = wdAlignParagraphCenter



Alinhamento à esquerda:

Selection.ParagraphFormat.Alignment = wdAlignParagraphRight



Alinhamento Justificado:

Selection.ParagraphFormat.Alignment = wdAlignParagraphJustify



A partir deste pequeno exemplo você pode também criar um formulário para que o usuário digite o texto e selecione o alinhamento desejado.

Veja um exemplo:

Crie um formulário como na imagem abaixo.


Formulário


No evento Initialize do Formulário adicione o código abaixo:


Private Sub UserForm_Initialize()
With ComboBox1 'Adiciona os itens da Caixa de Combinação
.AddItem ""
.AddItem "Esquerda"
.AddItem "Direita"
.AddItem "Centralizado"
.AddItem "Justificado"
End With
End Sub



No evento Click do botão Inserir insira o seguinte código:


Private Sub CommandButton1_Click()
Dim myText As Range
On Error GoTo CommandButton1_Click_Err
WordBasic.ViewFooterOnly
For Each myText In ActiveDocument.StoryRanges
Select Case myText.StoryType
Case Is = 8, 9, 11
Do
myText.Collapse Direction:=wdCollapseEnd

'Pega o texto da Caixa de Texto
myText.InsertAfter vbCr & TextBox1.Text

'Aplica o alinhamento conforme selecionado na Caixa de Combinação
If ComboBox1.Text = "Esquerda" Then
Selection.ParagraphFormat.Alignment = wdAlignParagraphLeft
ElseIf ComboBox1.Text = "Direita" Then
Selection.ParagraphFormat.Alignment = wdAlignParagraphRight
ElseIf ComboBox1.Text = "Centralizado" Then
Selection.ParagraphFormat.Alignment = wdAlignParagraphCenter
ElseIf ComboBox1.Text = "Justificado" Then
Selection.ParagraphFormat.Alignment = wdAlignParagraphJustify
End If
Set myText = myText.NextStoryRange
Loop Until myText Is Nothing
Case Else
End Select
Next

ActiveWindow.ActivePane.View.SeekView = wdSeekMainDocument
CommandButton1_Click_Fim:
Exit Sub
CommandButton1_Click_Err:
MsgBox "Erro n. " & Err.Number & " - " & Err.Description
Resume CommandButton1_Click_Fim
End Sub



No evento Click do botão Fechar insira o seguinte código:


Private Sub CommandButton2_Click()
Unload Me 'Fecha o formulário
End Sub



Ficará como na imagem abaixo:


Janela de Código



Gostou? Se quiser mais eu tenho um e-Book sobre VBA que você pode se interessar.
Confira aqui






Conteúdo Correspondente:




eBook Word 2010 VBA

© 2013 Tutoriais Word - Todos os direitos reservados