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

Home > VBA > Inserir marca d' água de texto em apenas uma página



Inserir Marca d' Água de Texto apenas em uma página.


Neste tutorial criaremos uma macro cujo objetivo é Inserir uma Marca d’ Água de Texto em apenas uma página, previamente selecionada pelo usuário.


Abra o documento no qual deseja inserir uma Marca d’ Água de Texto. Em seguida na Guia Desenvolvedor, no Grupo Código, clique em Visual Basic.


Visual Basic

No ambiente de desenvolvimento clique no menu Inserir e depois clique em Módulo,para inserir um novo módulo.


Módulo


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


Sub Marcadaguatexto()
Dim mdat As Shape
Set mdat = ActiveDocument.Shapes.AddTextEffect(powerpluswatermarkobject1, _
"SEUTEXTO AQUI", "Arial Black", 40, False, False, 0, 0)
mdat.Name = "Marca d’ Água de Texto"
mdat.Rotation = 315
mdat.LockAspectRatio = True
mdat.Height = InchesToPoints(0.77)
mdat.Width = InchesToPoints(2.04)
mdat.RelativeHorizontalPosition = wdRelativeVerticalPositionMargin
mdat.RelativeVerticalPosition = wdRelativeVerticalPositionMargin
mdat.Left = wdShapeCenter
mdat.Top = wdShapeCenter
mdat.TextEffect.NormalizedHeight = False
mdat.Line.Visible = False
mdat.Fill.Visible = True
mdat.Fill.ForeColor.RGB = RGB(196, 120, 120)
mdat.Fill.Transparency = 0.5
mdat.WrapFormat.AllowOverlap = True
mdat.WrapFormat.Side = wdWrapNone
mdat.WrapFormat.Type = 3
End Sub



Ficará como na imagem abaixo:


Código VBA


Feche o Editor do VBA para voltar ao Word.


Fechar e voltar para o Microsoft Word


Posicione o cursor (ponto de inserção) na página onde deseja inserir a Marca d’ Água de Texto, neste exemplo iremos inserir na segunda página.


Para executar a macro acione a Guia Desenvolvedor e no Grupo Código clique em Macros.


macro


Selecione a macro Marcadaguatexto e clique em executar


Executar macro


Veja o resultado e observe que a Marca d’ Água de Texto foi inserida apenas na segunda página.


inserir marca d' água de texto somente em uma página

Considerações Finais:


Você pode alterar o tipo e tamanho da fonte, bem como configurar a rotação, posição, transparência, etc, do texto mudando os valores das propriedades conforme suas necessidades:


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


Veja um exemplo:


Crie um formulário como na imagem abaixo.


Formulário VBA






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


Private Sub CommandButton1_Click()
Dim marcdagua As String
Dim mdat As Shape
marcdagua = TextBox1.Text
Set mdat = ActiveDocument.Shapes.AddTextEffect(powerpluswatermarkobject1, _
"marcdagua", "Arial Black", 40, False, False, 0, 0)
mdat.Name = "Marca d' Água de Texto"
mdat.Rotation = 300
mdat.LockAspectRatio = True
mdat.Height = InchesToPoints(0.77)
mdat.Width = InchesToPoints(2.04)
mdat.RelativeHorizontalPosition = wdRelativeVerticalPositionMargin
mdat.RelativeVerticalPosition = wdRelativeVerticalPositionMargin
mdat.Left = wdShapeCenter
mdat.Top = wdShapeCenter
mdat.TextEffect.NormalizedHeight = False
mdat.Line.Visible = False
mdat.Fill.Visible = True
mdat.Fill.ForeColor.RGB = RGB(196, 120, 120)
mdat.Fill.Transparency = 0.5
mdat.WrapFormat.AllowOverlap = True
mdat.WrapFormat.Side = wdWrapNone
mdat.WrapFormat.Type = 3
End Sub



Ficará como na imagem abaixo:


inserir marca d' água de texto somente em uma página


Execute o formulário e digite um texto na Caixa de Texto (TextBox1).


Formulário


Clique no botão Inserir, feche o Formulário e veja o resultado.


inserir marca d' água de texto somente em uma página


Se quiser que Marca d’ Água de Texto apareça em todas as páginas utilize a macro a baixo:


Sub Marcadaguatexto2()
ActiveDocument.Sections(1).Range.Select
ActiveWindow.ActivePane.View.SeekView = wdSeekCurrentPageHeader
Selection.HeaderFooter.Shapes.AddTextEffect( marcadagua, "SEU TEXTO AQUI", "Arial Back", 1, _
False, False, 0, 0).Select
Selection.ShapeRange.Name = "marcadagua"
Selection.ShapeRange.TextEffect.NormalizedHeight = False
Selection.ShapeRange.Line.Visible = False
Selection.ShapeRange.Fill.Visible = True
Selection.ShapeRange.Fill.Solid
Selection.ShapeRange.Fill.ForeColor.RGB = RGB(192,80, 77)
Selection.ShapeRange.Fill.Transparency = 0.5
Selection.ShapeRange.Rotation = 315
Selection.ShapeRange.LockAspectRatio = True
Selection.ShapeRange.Height = CentimetersToPoints(3.02)
Selection.ShapeRange.Width = CentimetersToPoints(18.12)
Selection.ShapeRange.WrapFormat.AllowOverlap = True
Selection.ShapeRange.WrapFormat.Side = wdWrapNone
Selection.ShapeRange.WrapFormat.Type = 3
Selection.ShapeRange.RelativeHorizontalPosition = wdRelativeVerticalPositionMargin
Selection.ShapeRange.RelativeVerticalPosition = wdRelativeVerticalPositionMargin
Selection.ShapeRange.Left = wdShapeCenter
Selection.ShapeRange.Top = wdShapeCenter
ActiveWindow.ActivePane.View.SeekView = wdSeekMainDocument
End Sub



inserir marca d' água de texto somente em uma página



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