日経パソコンでの第3回目の連載記事にて、表の行を挿入するマクロを紹介いたしました。
詳細は、「単純作業の繰り返しこそ自動化せよ 」の2ページ目と3ページ目をご覧ください。
このマクロは、カーソルが表の中にある場合にだけ実行されます。
そもそも行を追加・削除するマクロですから、表と関係のない部分で作動してしまうとうれしくないですよね。
そのマクロで利用したのが、現在のカーソル位置が表の中にあるのかどうかを判定するものです。
今回は、その判定に用いたInformationプロパティを紹介します。
<目次>
このマクロでできること
カーソル位置の情報を取得します。
例えば、以下のようなものがあります。
・ページ/セクション番号など
・文書中での位置(行など)
・モード(上書きモード、CapsLockキーの状態など)
・カーソルの位置の領域判定(ヘッダー/フッター、表、脚注など)
・表の情報(最大行数、最大列数など)
これを用いることで、「カーソルが表の中にあれば、○○する」という処理も可能になるわけですね。
詳細はマイクロソフトのサポート記事「カーソル位置の情報を取得する方法 」をご覧ください。
ただ、以前の「現在のカーソル位置の段落番号を取得するマクロ 」にも書きましたが、Wordの標準のプロパティでは、現在のカーソル位置の段落番号は取得できませんのでご注意を。
マクロの解説
青文字の定数を変更することで、様々な情報を取得できます。
上記のサポート記事で定数が解説されています。
下記のマクロでは、単純にメッセージボックスで情報を表示してくれます。このマクロだけでは、実用性はないですね(笑)。
マクロ
Sub Information_Retrieve() MsgBox Selection.Information(wdFirstCharacterLineNumber) End Sub
関連記事
単純作業の繰り返しこそ自動化せよ (日経パソコン連載記事)
カーソル位置の情報を取得する方法 (マイクロソフトサポート記事)