矢印キーを使用してセルからセルに移動するときに、選択したセルの中心にマウス ポインターを移動しようとしています。
Excel 2010 では、次のソリューションは完全に機能します
Public Declare Function SetCursorPos Lib "user32" (ByVal x As Long, ByVal y As Long) As Long
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
SetCursorPos _
ActiveWindow.ActivePane.PointsToScreenPixelsX(Target.Left + (Target.Width / 2)), _
ActiveWindow.ActivePane.PointsToScreenPixelsY(Target.Top + (Target.Height / 2))
End Sub
ただし、Excel 2003にはandメソッドActiveWindow.ActivePane
がありません。そこで、以下のような別の解決策を見つけようとしました。X 軸は正常に機能しますが、Y 軸は機能しません。PointsToScreenPixelsX
PointsToScreenPixelsY
Public Declare Function SetCursorPos Lib "user32" (ByVal x As Long, ByVal y As Long) As Long
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
SetCursorPos _
ActiveWindow.Application.ActiveWindow.PointsToScreenPixelsX((Target.Left + (Target.Width / 2)) / 0.75), _
ActiveWindow.Application.ActiveWindow.PointsToScreenPixelsY((Target.Top + (Target.Height / 2)) / 0.75)
End Sub
解像度などに関係なくこれが機能することを望みます。何かアイデアはありますか?