Home » ワードマクロ・Word VBAの使い方 » Rangeを広げるExpandメソッドを確認しましょう

Rangeを広げるExpandメソッドを確認しましょう

動作検証バージョン:64bit Windows 10 Pro + 32bit Word(バージョン2004 ビルド12730.20270 Microsoft Store)

「vba word range 広げる」
という検索キーワードをキッカケにして、Rangeを1文字広げるWord VBAのコードをご紹介しました。

[スポンサードリンク]

Word VBAのRangeオブジェクトには、名前のとおりRangeを広げるExpandメソッドも用意されています。

Range.Expandメソッドを確認するサンプルマクロ

以下のSubプロシージャをステップ実行して、Range.Expandメソッドの引数Unitの指定によって、どのようにRangeが広がるかをご確認ください。

Sub RangeのExpandを確認する()
 Dim rng As Range
 Set rng = Selection.Range

 rng.Expand Unit:=wdCharacter
 rng.Select

 rng.Expand Unit:=wdWord
 rng.Select

 rng.Expand Unit:=wdSentence
 rng.Select

 rng.Expand Unit:=wdParagraph
 rng.Select

 rng.Expand Unit:=wdSection
 rng.Select

 rng.Expand Unit:=wdStory
 rng.Select

End Sub

サンプルマクロをステップ実行したときの挙動

例えば、以下のような段落が先頭に存在する文書がアクティブな状態で、

Word に用意されているヘッダー、フッター、表紙、テキスト ボックス デザインを組み合わせると、プロのようなできばえの文書を作成できます。たとえば、一致する表紙、ヘッダー、サイドバーを追加できます。[挿入] をクリックしてから、それぞれのギャラリーで目的の要素を選んでください。

カーソルを先頭に置いてから、上記のSubプロシージャを拙著『いちばんやさしいPowerPoint VBAの教本』でも多用しているショートカットキー[F8]を使ってステップ実行してください。

まず、
  rng.Expand Unit:=wdCharacter
  rng.Select
が実行されると、wdCharacter(文字)単位でExpandされ、文字「W」が選択されます。

次に、
  rng.Expand Unit:=wdWord
  rng.Select
が実行されると、wdWord(単語)単位でExpandされ、単語「Word」が選択されます。

つづいて、
  rng.Expand Unit:=wdSentence
  rng.Select
が実行されるとwdSentence(文)単位でExpandされ、文「Word に用意されているヘッダー、フッター、表紙、テキスト ボックス デザインを組み合わせると、プロのようなできばえの文書を作成できます。」が選択されます。

更に、
  rng.Expand Unit:=wdParagraph
  rng.Select
が実行されると、wdParagraph(段落)単位でExpandされ、段落「Word に用意されているヘッダー、フッター、表紙、テキスト ボックス デザインを組み合わせると、プロのようなできばえの文書を作成できます。たとえば、一致する表紙、ヘッダー、サイドバーを追加できます。[挿入] をクリックしてから、それぞれのギャラリーで目的の要素を選んでください。」が選択されます。

その後の、
  rng.Expand Unit:=wdSection
  rng.Select
を実行すればセクションが選択され、
  rng.Expand Unit:=wdStory
  rng.Select
を実行すれば本文全体が選択されます。

Rangeを広げているのはExpandメソッド

なお、上記のSubプロシージャでは
  rng.Select
を繰り返し実行していますが、これは目視確認しやすくするために入れているに過ぎません。

Rangeオブジェクトを広げているのはあくまでも、Range.Expandメソッドです。

[スポンサードリンク]

Home » ワードマクロ・Word VBAの使い方 » Rangeを広げるExpandメソッドを確認しましょう

「ワードマクロ・Word VBAの使い方」の記事一覧

検索


Copyright © インストラクターのネタ帳 All Rights Reserved.
.