「vba word range 広げる」
という検索キーワードでアクセスがありました。
Word VBAで、文字列範囲を表すRangeオブジェクトを広げるには、どのようなコードを書けばいいのかを探していた方による検索でしょうか。
「広げる」といっても、どう広げたいのかがわかりませんので、Rangeの基本を理解するためにも、1文字広げるサンプルをご紹介しておきます。
Rangeを1文字後ろに広げるサンプル
アクティブな文書で文字列を選択しておいて以下のSubプロシージャを実行すると、選択範囲が1文字後ろに広がります。
With Selection.Range
.End = .End + 1
.Select
End With
End Sub
まず、SelectionオブジェクトのRangeプロパティで、
選択されている文字列範囲を表すRangeオブジェクトを取得します。
With Selection.Range
Rangeオブジェクトに用意されているEndプロパティを利用すると、
Rangeの、末尾に該当する文字の位置を取得・設定できますから、1を加算することで、
With Selection.Range
.End = .End + 1
後ろ方向に1文字Rangeを広げています。
Endプロパティの値に1を加算した時点でRangeオブジェクトは広がっているのですが、これだけでは何が起きているのかわからないため、RangeオブジェクトのSelectメソッドで、
選択を行っています。
.Select
Rangeを1文字前に広げるサンプル
以下のSubプロシージャを実行すると、選択範囲が1文字前方向に広がります。
With Selection.Range
.Start = .Start - 1
.Select
End With
End Sub
Rangeオブジェクトに用意されているStartプロパティを利用すると、
文字列範囲の、開始文字の位置を取得・設定できますから、1を減算することで、
With Selection.Range
.Start = .Start - 1
Rangeを前方向に1文字広げています。
最終更新日時:2022-09-22 16:19
- Newer:xlrdで空白セルかを判定する
- Older:PowerPoint VBAでアニメーションを設定する
Home » ワードマクロ・Word VBAの使い方 » Word.Rangeオブジェクト » Word VBAでRangeを1文字広げる-End・Startプロパティ