Stampa di un foglio di stile completo (Microsoft Word)
Dave adorerebbe un modo per stampare un foglio di stile completo per i suoi documenti. Sa che può scegliere di stampare “Stili” nella finestra di dialogo Stampa, ma preferisce avere un foglio di stile che mostri gli stili effettivi, come colore, dimensione, carattere, ecc.
Sfortunatamente non esiste tale capacità in Word. Puoi, tuttavia, creare un foglio di stile a tuo piacimento utilizzando una macro. Ad esempio, quanto segue inserirà, nel documento corrente, i nomi di tutti gli stili disponibili nel documento. Ogni nome di stile si trova su una riga (paragrafo) ed è formattato utilizzando i vari stili.
Sub ListStyleNames() For Each Style In ActiveDocument.Styles With Selection .Style = ActiveDocument.Styles(Style) .TypeText (ActiveDocument.Styles(Style).NameLocal) .TypeParagraph End With Next End Sub
Un tale approccio, sebbene utile per un elenco conciso di stili, non è molto più informativo di quello che può essere stampato utilizzando la designazione “Stili” nella finestra di dialogo Stampa. Tuttavia, fornisce una base su cui costruire per creare un foglio di stile più completo.
Il problema con la creazione di un foglio di stile dettagliato utilizzando le macro è che gli stili possono contenere un sacco di informazioni. Il modello a oggetti utilizzato da Word (e accessibile in VBA) diventa rapidamente piuttosto complesso quando si testano gli stili per vedere cosa contengono. Ecco solo un semplice esempio per darti il sapore:
Sub SimpleStyleSheet() Dim sOutput As String Dim sTemp As String Dim StyleTypes(4) As String StyleTypes(1) = "Paragraph" StyleTypes(2) = "Character" StyleTypes(3) = "Table" StyleTypes(4) = "List" For Each Style In ActiveDocument.Styles sOutput = Style.NameLocal & vbCrLf sOutput = sOutput & " Style type: " & StyleTypes(Style.Type) & vbCrLf sTemp = Style.BaseStyle If Len(sTemp) > 0 Then sOutput = sOutput & " Based on: " & Style.BaseStyle & vbCrLf End If sOutput = sOutput & " Font: " & Style.Font.Name sTemp = "" If Style.Font.Bold Then sTemp = sTemp & "Bold, " If Style.Font.Italic Then sTemp = sTemp & "Italic, " If Len(sTemp) > 0 Then sTemp = Left(sTemp, Len(sTemp) - 2) sOutput = sOutput & " (" & sTemp & ")" End If sOutput = sOutput & vbCrLf Selection.TypeText (sOutput & vbCrLf) Next End Sub
L’unica cosa che fa questa macro è elencare tutti gli stili, che tipo di stili sono, se sono basati su uno stile diverso (e in tal caso, come si chiama quello stile), quale carattere è usato dallo stile e se il carattere è in grassetto o corsivo. Chiunque abbia familiarità con gli stili capirà immediatamente che questi pochi elementi sono solo un piccolo esempio di ciò che può essere definito all’interno di uno stile. Controllare tutti i possibili formati di stile e stamparli nel foglio di stile renderebbe la macro davvero molto lunga.
Anche così, questa macro potrebbe essere utile in quanto fornisce un’idea di come mettere insieme il proprio foglio di stile. Hai solo bisogno di capire cosa vuoi vedere nel foglio di stile e quindi aggiungere il codice della macro per determinare quell’informazione e stamparla.
_Nota: _
Se desideri sapere come utilizzare le macro descritte in questa pagina (o in qualsiasi altra pagina dei siti WordTips), ho preparato una pagina speciale che include informazioni utili.
WordTips è la tua fonte di formazione economica su Microsoft Word.
(Microsoft Word è il software di elaborazione testi più popolare al mondo.) Questo suggerimento (6748) si applica a Microsoft Word 97, 2000, 2002 e 2003. È possibile trovare una versione di questo suggerimento per l’interfaccia a nastro di Word (Word 2007 e più tardi) qui: