Wordで無選択ならば行全体を切り取りまたはコピーするマクロ

VSCodeでは 文字列を選択して Ctrl+X とすると切り取り(カット)になりますが、選択せずに Ctrl+X とするとカーソルのある行全体を切り取ります。Ctrl+Cも無選択ならば行全体をコピーします。
SublimeTextも同様の動作をします。
調べてみたところ、以前から使用しているサクラエディタも同様でした。これは知りませんでした。テキストエディタだとよくある機能なのかもしれません。確かに便利です。

一方、ワープロソフトのWordはこのような動作はありません。選択した文字列を切り取り、コピーしますが、無選択では何も起きません。
そこでWordにもこの機能を追加してみます。マクロを使います。

コード

Sub 無選択ならば行全体を切り取り()
    If Selection.Type = wdSelectionIP Then
        Selection.Paragraphs(1).Range.Select
    End If
    Selection.Cut
End Sub
Sub 無選択ならば行全体をコピー()
    If Selection.Type = wdSelectionIP Then
        Selection.Paragraphs(1).Range.Select
    End If
    Selection.Copy
End Sub

ショートカットの割り当て

上のマクロにそれぞれ Ctrl+X と Ctrl+C を割り当てます。
詳しくは「Wordで「テキスト貼り付け」にショートカットを割り当てる | You Look Too Cool」を参考にしてください。

これで無選択ならば Ctrl+X と Ctrl+C で行全体の切り取り、コピーになります。
なお、この操作はWordの基本中の基本の操作に影響を与えるので、使用に当たっては充分に注意してください。別のショートカットを割り当てることをおすすめします。

コメント

タイトルとURLをコピーしました