句読点まで一気に選択したいときに

文を書いたり修正したりしていると、カーソルの移動に時間がかかることがあります。例えば、現在のカーソル位置から次の句読点までの部分を削除したいとき、Shiftを押しながら右矢印キーカタカタを叩いて句読点まで選択して削除をします。僅かな時間ですが、積み重なると大きな時間になります。

このときに、次の句読点(+改行・墨付き括弧)まで、一気に選択するマクロを作成しました。

Sub 句読点まで選択をする()
Dim obj As String
Dim eRng As Range
Dim sRng As Range
Set sRng = Selection.Range '現在の選択位置を記録

With Selection.Find
    .ClearFormatting
    .Replacement.ClearFormatting
    .Text = "[" & vbCr & "。、【】]" '改行・句読点・墨付き括弧を検索
    .Format = False
    .Forward = True
    .Wrap = wdFindContinue
    .MatchFuzzy = False
    .MatchWildcards = True
    .Execute
    
    .Text = ""
    .MatchWildcards = False
End With

Set eRng = Selection.Range '改行・句読点・墨付き括弧の位置を記録
ActiveDocument.Range(sRng.End, eRng.End - 1).Select '文字を選択
Set sRng = Nothing
Set eRng = Nothing

End Sub

例えば、次のような文書を作成し、「買ったら固くてかめない」から次の句読点まで削除したいとき、矢印で示した位置にカーソルを持っていき、マクロを実行します。

すると、 「買ったら固くてかめない」から次の句読点まで選択されます。

削除キーを押して削除します。

削除後は、上のようになります。