Sumário
Este artigo contém Visual Basic para macros de aplicações que geram uma lista dos tipos de letra disponíveis para o Microsoft Word e apresenta um exemplo de cada tipo de letra.
As listas de tipos de letra geradas por estas macros dependem da impressora seleccionada na caixa de diálogo Imprimir .
Mais informações
A Microsoft fornece exemplos de programação apenas a título ilustrativo, sem garantia expressa ou implícita. Isto inclui, mas não está limitado a, garantias implícitas de comercialização ou adequação a um fim específico. Este artigo pressupõe que está familiarizado com a linguagem de programação que está a ser demonstrada e com as ferramentas que são utilizadas para criar e depurar procedimentos. Técnicos de suporte da Microsoft podem ajudar a explicar a funcionalidade de um determinado procedimento, mas não modificarão estes exemplos para proporcionarem funcionalidades adicionais nem criarão procedimentos adaptados às necessidades específicas do utilizador.
A seguinte macro de exemplo do Visual Basic for aplicações cria um novo documento em branco e insere uma amostra de cada tipo de letra disponível:
Sub ListFonts()
Dim varFont As Variant
' Speeds macro processing and suppresses display.
Application.ScreenUpdating = False
' Create new document.
Documents.Add Template:="normal"
' Loop through each available font.
For Each varFont In FontNames
With Selection
' Format for name of font.
.Font.Name = "times new roman"
.Font.Bold = True
.Font.Underline = True
' Insert Font name.
.TypeText varFont
' Insert a new paragraph after the Font Name.
.InsertParagraphAfter
' Move to the new paragraph.
.MoveDown unit:=wdParagraph, Count:=1, Extend:=wdMove
' Format for the font example.
.Font.Bold = False
.Font.Underline = False
.Font.Name = varFont
' Enter example text(Alphabetic characters.)
.TypeText "abcdefghijklmnopqrstuvwxyz"
' Insert a new paragraph.
.InsertParagraphAfter
' Move to the new paragraph.
.MoveDown unit:=wdParagraph, Count:=1, Extend:=wdMove
' Insert example text(Numeric characters.)
.TypeText "0123456789?$%&()[]*_-=+/<>"
' Insert two new paragraphs and move down.
.InsertParagraphAfter
.InsertParagraphAfter
.MoveDown unit:=wdParagraph, Count:=1, Extend:=wdMove
End With
Next varFont
Application.ScreenUpdating = True
End Sub
A seguinte macro cria um novo documento em branco, cria uma tabela e, em seguida, insere uma amostra de cada tipo de letra disponível:
Sub ListAllFonts()
Dim J As Integer
Dim FontTable As Table
'Start off with a new document
Set NewDoc = Documents.Add
'Add a table and set the table header
Set FontTable = NewDoc.Tables.Add(Selection.Range, FontNames.Count + 1, 2)
With FontTable
.Borders.Enable = False
.Cell(1, 1).Range.Font.Name = "Arial"
.Cell(1, 1).Range.Font.Bold = 1
.Cell(1, 1).Range.InsertAfter "Font Name"
.Cell(1, 2).Range.Font.Name = "Arial"
.Cell(1, 2).Range.Font.Bold = 1
.Cell(1, 2).Range.InsertAfter "Font Example"
End With
'Go through all the fonts and add them to the table
For J = 1 To FontNames.Count
With FontTable
.Cell(J + 1, 1).Range.Font.Name = "Arial"
.Cell(J + 1, 1).Range.Font.Size = 10
.Cell(J + 1, 1).Range.InsertAfter FontNames(J)
.Cell(J + 1, 2).Range.Font.Name = FontNames(J)
.Cell(J + 1, 2).Range.Font.Size = 10
.Cell(J + 1, 2).Range.InsertAfter "ABCDEFG abcdefg 1234567890"
End With
Next J
FontTable.Sort SortOrder:=wdSortOrderAscending
End Sub
Para mais informações sobre como utilizar o código de exemplo neste artigo, clique no número de artigo seguinte para visualizar o artigo na Microsoft Knowledge Base:
212536 como executar o código de exemplo a partir de artigos da Base de dados de conhecimento no Office 2000
Referências
Para obter informações adicionais sobre como obter ajuda com o Visual Basic for Applications, clique nos números de artigo que se segue para visualizar os artigos na Microsoft Knowledge Base:
Recursos de programação de macro de 212623
Lista de 226118 de recursos que estão disponíveis para ajudar a aprender Visual Basic para aplicações de programação