文末、文頭へのカーソル移動
以前、「ピリオド・句点までの文字を選択」を書いたときに、文末や文頭を選ぶために、検索用コードをもちいて句点(。)やピリオド(.)を見つける作業をしました。
ところが、最近見つけたのはワードのVBAが標準で持っている機能をつかった、文頭や文末の見つけ方です。
こういう標準の機能を知っていると、プログラムが簡潔になりますね。
まだ、知らないことだらけです。
□まず、カーソル位置の文章を選択するコードです。
Selection.Expand Unit:=wdSentence
これを実行すると、英文であれば、カーソル位置の文章の文頭の文字から、次の文章の文頭前までが選択されます。
よって、ダブルスペースで文章を書いているときには、文章丸ごとと、ピリオドのあとのスペース二つも選択されます。
英文では、文中にあるピリオドが、数値の直後にある場合には、数字の小数点とみなされるのか、そのピリオドが文章の末尾であるとは認識されないみたいです。
日本語の文章では、文章の末尾を句点(。)や改行で認識しているらしいです。
句点のあとにスペースがあると、そのスペースまでを一文としてみなします。
多少変則的な解釈が必要になるかもしれませんが、下記のコードで、文末と文頭とにカーソルを移動することが出来ます。
'○文頭へカーソル移動
Selection.Expand Unit:=wdSentence
Selection.Collapse Direction:=wdCollapseStart
'○文末へカーソル移動
Selection.Expand Unit:=wdSentence
Selection.Collapse Direction:=wdCollapseEnd

コメント