【1行マクロ】一文を選択する | みんなのワードマクロ

みんなのワードマクロ

ワードマクロで、文書作成とオフィス事務を効率化!!

カーソルが置かれている文章を選択する一行マクロです。


Selection.Expand Unit:=wdSentence


以下のように画面の中央付近にカーソルが置かれた状態でこれを実行します。


みんなのワードマクロ

すると、こんな感じになります。



みんなのワードマクロ

【英文の場合】

カーソル位置の文章の文頭の文字から、次の文章の文頭前までが選択されます。


ダブルスペースで文章を書いているときには、文章丸ごとと、

ピリオドのあとのスペース二つも選択されます。


文中にあるピリオドが、数値の直後にある場合には、数字の小数点とみなされる

らしく、そのピリオドが文章の末尾であるとは認識されないみたいです。


【日本語の場合】

文章では、文章の末尾を句点(。)や改行で認識しているらしいです。


句点のあとにスペースがあると、そのスペースまでを一文としてみなします。


▼応用例

このExpandのメソッド(命令文)の意味は、選択範囲を拡大する、という

文字通りのものです。


なので、以下のように拡大単位を変えると結果が変わります。

他にもいろいろと単位はありますが、よく使うものを2つ紹介します。


 ①段落を選択する

 Selection.Expand Unit:=wdParagraph


こんな感じですね。


みんなのワードマクロ

段落というのは、今更ですが、改行で挟まれた部分ですよね。


で、ワードマクロで改行というのは、^13 ではなくて、^p のことを意味する

ということが、重要な部分です。


別の記号で示すと、vbCr または vbCrLf で区切られているもの。


こちらの記事 で水野麻子さんが詳しく説明されていますが、

プログラムを組む上では、注意が必要ですね。


プログラムを作っているときに、ついつい、改行を ^13 として

置換後の文字列に設定してしまうことがあって(私は、何度も間違えました)、

プログラムの誤作動の原因を見つけるのに苦労した経験があります。


^13 にすると、段落が正確に認識されませんのでご注意を、というか、

段落がうまく選択できないな、と思ったら、この記事を思い出してください。


ちなみに、上記で選択した段落の最後の改行が ^13 の場合には、

同じプログラムを実行すると、以下のように選択されてしまいます。


みんなのワードマクロ

 ②文書全体を選択する

 Selection.Expand Unit:=wdStory


こちらも同じように実行すると、こんな感じ。


みんなのワードマクロ