Viva pessoal
Precisava da vossa ajuda para fazer uma macro de Word.
Preciso de inserir um page break sempre que o caracter "#" está presente no texto.
Isto é um documento que é importado de um ficheiro de texto e é para imprimir, mas para inserir um page break sempre que aparece o referido caracter e tem vários.
Obrigado
b1t dA3m0n
24-07-2007, 12:04
Experimenta com um macro assim:
Sub CreateLineBreaks()
'
' CreateLineBreaks Sub
'
'
Selection.Find.ClearFormatting
Selection.Find.Replacement.ClearFormatting
With Selection.Find
.Text = "#"
.Replacement.Text = "^l"
.Forward = True
.Wrap = wdFindContinue
.Format = False
.MatchCase = False
.MatchWholeWord = False
.MatchWildcards = False
.MatchSoundsLike = False
.MatchAllWordForms = False
End With
Selection.Find.Execute Replace:=wdReplaceAll
End Sub
bem, isso fez nada mais que um replace do caracter # por spaces
a intenção era fazer um page break em vez do replace...
b1t dA3m0n
24-07-2007, 14:24
bem, isso fez nada mais que um replace do caracter # por spaces
a intenção era fazer um page break em vez do replace...
Podias ter adaptado, assim o efeito de aprendizagem era maior :-D
Mas aqui vai:
Sub InsertPageBreak()
'
' InsertPageBreak
'
'
Selection.Find.ClearFormatting
Selection.Find.Replacement.ClearFormatting
With Selection.Find
.Text = "#"
.Replacement.Text = "#^m"
.Forward = True
.Wrap = wdFindContinue
.Format = False
.MatchCase = False
.MatchWholeWord = False
.MatchWildcards = False
.MatchSoundsLike = False
.MatchAllWordForms = False
End With
Selection.Find.Execute Replace:=wdReplaceAll
End Sub
obrigado já funciona, já fiz uma macro onde abre o ficheiro e faz pagebreaks e imprime.
o meu negócio é mais cobol e rpg...
obrigado pela ajuda
Onde é que aprenderam o VBA do Microsoft Word ?
Algum livro ou sítio em especial ?