このトピックでは、次のセクションのタスクに関連する Visual Basic の例を示します。
選択範囲に書式を設定する
次の使用例は、 Selection プロパティを使用して、選択されている文字列に文字書式および段落書式を設定します。 文字書式のプロパティおよびメソッドにアクセスするには、 Font プロパティを使用し、段落書式のプロパティおよびメソッドにアクセスするには、 ParagraphFormat プロパティを使用します。
Sub FormatSelection()
With Selection.Font
.Name = "Times New Roman"
.Size = 14
.AllCaps = True
End With
With Selection.ParagraphFormat
.LeftIndent = InchesToPoints(0.5)
.Space1
End With
End Sub
範囲に書式を設定する
次の使用例は、現在の文書内で最初の 3 つの段落を参照する Range オブジェクトを定義します。 Range オブジェクトの書式設定は、 Font オブジェクトおよび ParagraphFormat オブジェクトのプロパティを設定して行います。
Sub FormatRange()
Dim rngFormat As Range
Set rngFormat = ActiveDocument.Range( _
Start:=ActiveDocument.Paragraphs(1).Range.Start, _
End:=ActiveDocument.Paragraphs(3).Range.End)
With rngFormat
.Font.Name = "Arial"
.ParagraphFormat.Alignment = wdAlignParagraphJustify
End With
End Sub
テキストを挿入して、文字および段落の書式を設定する
次の例では、現在の文書の上部に "Title" という単語を追加します。 先頭の段落は中央揃えに配置され、段落の後には 12 mm の間隔が追加されます。 "はじめに" という単語には、24 ポイントの MS ゴシック フォントが設定されます。
Sub InsertFormatText()
Dim rngFormat As Range
Set rngFormat = ActiveDocument.Range(Start:=0, End:=0)
With rngFormat
.InsertAfter Text:="Title"
.InsertParagraphAfter
With .Font
.Name = "Tahoma"
.Size = 24
.Bold = True
End With
End With
With ActiveDocument.Paragraphs(1)
.Alignment = wdAlignParagraphCenter
.SpaceAfter = InchesToPoints(0.5)
End With
End Sub
段落前の間隔を 12 ポイントとなしの間で切り替える
次の例では、選択範囲の最初の段落の段落前の書式を切り替えます。 マクロは、値の前の現在のスペースを取得し、値が 12 ポイントの場合、スペースの前の書式設定が削除されます ( SpaceBefore プロパティは 0 に設定されています)。 space-before 値が 12 以外の場合、 SpaceBefore プロパティは 12 ポイントに設定されます。
Sub ToggleParagraphSpace()
With Selection.Paragraphs(1)
If .SpaceBefore = 12 Then
.SpaceBefore = 0
Else
.SpaceBefore = 12
End If
End With
End Sub
太字の書式のオンとオフを切り替える
次の使用例は、選択されている文字列の太字の書式を切り替えます。
Sub ToggleBold()
Selection.Font.Bold = wdToggle
End Sub
左余白を 0.5 インチ増やす
次の使用例は、左右の余白を 0.5 インチ (12.7 mm) だけ増やします。 PageSetup オブジェクトは、1 つの文書に関するページ設定属性 (左余白、下の余白、ページ サイズなど) をプロパティとしてすべて持っています。 LeftMargin プロパティは、左余白の設定値の取得および設定に使用します。 RightMargin プロパティは、右余白の設定値の取得および設定に使用します。
Sub FormatMargins()
With ActiveDocument.PageSetup
.LeftMargin = .LeftMargin + InchesToPoints(0.5)
.RightMargin = .RightMargin + InchesToPoints(0.5)
End With
End Sub
サポートとフィードバック
Office VBA またはこの説明書に関するご質問やフィードバックがありますか? サポートの受け方およびフィードバックをお寄せいただく方法のガイダンスについては、Office VBA のサポートおよびフィードバックを参照してください。