Selection.MoveRightメソッド(Word)の挙動に注意
[Selection].MoveRightメソッドの挙動に注意
[Selection].MoveRight
メソッド([Selection].MoveLeft
メソッド)を使用していて軽くハマったので、記しておく。
[Selection].MoveRightメソッド
[Selection].MoveRight
メソッドというのは、Wordでドキュメント上のカーソルを動かすメソッド。
このときにも触れたことがある。
文字通りカーソルを右に動かすメソッド。
簡単におさらいをしておくと、使うときは
Call [Selection].MoveRight([Unit], [Count], [Extend])
と書く。
で、
- 引数
Unit
で移動の単位 - 引数
Count
で移動の量 - 引数
Extend
で移動の仕方(単純にカーソルを動かすか、ドラッグしたように動かすか)
をそれぞれ指定する。
たとえば、
Selection.MoveRight(wdCharacter, 1, wdExtend)
と書けば、
- 文字単位で
1
だけ- ドラッグしたように
カーソルを右に動かすことになる。
通常の挙動
たとえば、
このようなドキュメント(笑)上で、「強敵」の直前にカーソルを置いて、次のリスト1を実行するとどうなるか。
リスト1
Private Sub moveCursorTest() Call Selection.MoveRight(wdCharacter, 1, wdExtend) End Sub
当然、
こうなる。
何の不思議もない。疑問などあろうはずがありません。
文字にルビが振られているとき
では、文字にルビが振られているとどうなるか。
今度は、先ほどのドキュメント(笑)を、
このように変更する。「強敵」の2文字に「とも」とルビを振った。
この状態で、「強敵」の直前にカーソルを置いて、リストを実行してみる。
すると、
なんと、こうなるのである!
おわりに
キーボード操作と全く同じ結果になるとはいえ、少し注意が必要かも知れない。