|
カーソル位置がページ最終行かどうかについては、それを直接判定する方法はないようです(私ではわからない&探しても見つけられなかった)
ですので、私ならどうするかですが、
1.現在のカーソル位置が何行目の何文字目かを記録
2.カーソルを次の行へ移動(最終ページの場合は動かない)
3.移動前と移動後の行番号を比較して、移動後の方が大きければ(同じページ内の次の行に移動している)最終行でない、同じか小さければ最終行と判定
4.元の位置にカーソルを戻す
という感じです。
何行目、何文字目というのは、
Selection.Information(wdFirstCharacterLineNumber)
Selection.Information(wdFirstCharacterColumnNumber)
で取得できます。
具体的なコードですが、こんなものでどうでしょう。
Dim tempLine As Long
Dim tempColumn As Long
tempLine = Selection.Information(wdFirstCharacterLineNumber)
tempColumn = Selection.Information(wdFirstCharacterColumnNumber)
Selection.Move wdLine, 1
Select Case Selection.Information(wdFirstCharacterLineNumber)
Case Is < tempLine
Selection.Move wdLine, -1
Selection.Move wdCharacter, tempColumn - 1
※最終行だった場合の処理※
Case tempLine
Selection.HomeKey
Selection.Move wdCharacter, tempColumn - 1
※最終行だった場合の処理※
Case Else
Selection.Move wdLine, -1
Selection.Move wdCharacter, tempColumn - 1
※最終行でなかった場合の処理※
End Select
|
|