Skrive en Full Style Sheet

December 25  by Eliza

Dave ville elske en måte å skrive ut et fullverdig stilark for sine dokumenter. Han vet at han kan velge å skrive ut "Styles" i dialogboksen Skriv ut, men han ville heller ha et stilark som viser den faktiske stiler, for eksempel farge, størrelse, font, etc.

Dessverre er det ingen slik mulighet i Word. Du kan imidlertid opprette et stilark av din smak ved å bruke en makro. For eksempel vil følgende sette inn, i det aktuelle dokumentet, navnene på alle stiler tilgjengelig i dokumentet. Hvert navn stil er på en egen linje (ledd) og er formatert ved hjelp av ulike stiler.

Sub ListStyleNames ()
For hver stil I ActiveDocument.Styles
Med markering
.Style = ActiveDocument.Styles (stil)
.TypeText (ActiveDocument.Styles (stil) .NameLocal)
.TypeParagraph
Avslutt med
Neste
End Sub

En slik tilnærming, mens hendig for en kortfattet liste over stiler, er ikke mye mer informativ enn hva som kan skrives ut ved hjelp av "Styles" betegnelse i dialogboksen Skriv ut. Det gjør imidlertid gi grunnlag hvorpå man kan bygge for å skape et mer fullverdig stilark.

Problemet med å lage en detaljert stilark ved hjelp av makroer er at stilene kan inneholde massevis av informasjon. Objektmodellen som brukes av Word (og tilgjengelig i VBA) blir fort ganske komplisert når du tester stiler å se hva de inneholder. Her er bare et enkelt eksempel for å gi deg smaken:

Sub SimpleStyleSheet ()
Dim sOutput As String
Dim STEMP As String
Dim StyleTypes (4) Som String

StyleTypes (1) = "Avsnitt"
StyleTypes (2) = "tegn"
StyleTypes (3) = "Table"
StyleTypes (4) = "List"

For hver stil I ActiveDocument.Styles
sOutput = Style.NameLocal & vbCrLf
sOutput = sOutput & "Style Type:" & StyleTypes (Style.Type) og vbCrLf
STEMP = Style.BaseStyle
Hvis Len (STEMP)> 0 Then
sOutput = sOutput & "Basert på:" & Style.BaseStyle & vbCrLf
End If
sOutput = sOutput & "Font:" & Style.Font.Name
STEMP = ""
Hvis Style.Font.Bold Deretter STEMP = STEMP & "Fet,"
Hvis Style.Font.Italic Deretter STEMP = STEMP & "Kursiv",
Hvis Len (STEMP)> 0 Then
STEMP = Left (STEMP, Len (STEMP) - 2)
sOutput = sOutput & "(" & STEMP & ")"
End If
sOutput = sOutput & vbCrLf
Selection.TypeText (sOutput & vbCrLf)
Neste
End Sub

Det eneste denne makroen gjør er å liste opp alle stiler, hva slags stiler de er, om de er basert på en annen stil (og i så fall hva som stilen heter), hva skriften brukes av stilen, og hvorvidt skriften er fet eller kursiv. Noen kjent med stiler vil umiddelbart forstå at disse få elementer er bare et lite utvalg av hva som kan defineres innenfor en stil. Å sjekke alle mulige stil formater og skrive dem ut i stilarket ville gjøre makro veldig lenge, faktisk.

Likevel, kanskje denne makroen være nyttig som det gir en idé om hvordan du kan sette sammen din egen stil ark. Du trenger bare å finne ut hva du ønsker å se i stilarket og deretter legge til makrokoden for å fastslå at informasjon og skrive det ut.

WordTips er din kilde for kostnadseffektiv Microsoft Word trening. (Microsoft Word er den mest populære tekstbehandlingsprogrammet i verden.) Dette tipset (6748) gjelder for Microsoft Word 97, 2000, 2002, og 2003.