Столкнулся с проблемой - нужно по кнопке макроса переместить курсор мыши в активную ячейку на листе (те найти координаты активной ячейки и перевести курсор мыши внутрь этих координат). Активная ячейка может быть в диапазоне Q3:Q400 те так примерно
Код
Sub ПереместитьКурсор()
If Not Intersect(ActiveCell, Range("Q4:Q400")) Is Nothing Then
''''''' переместить курсор мыши в активную ячейку
End If
End Sub
начал искать похожую задачу - ничего не смог найти
С помощью API. Координаты вычисляются приблизительно и при изменении масштаба экрана в отличный от стандартного, могут быть сюрпризы
Код
Declare Function SetCursorPos Lib "user32" (ByVal x As Integer, ByVal y As Integer) As Integer
Sub CursorMove()
Dim iX As Long, iY As Long
If Not Intersect(ActiveCell, Range("D5:D20")) Is Nothing Then
With ActiveCell
iX = ActiveWindow.PointsToScreenPixelsX((.Left + .Width / 2) * 4 / 3)
iY = ActiveWindow.PointsToScreenPixelsY((.Top + .Height / 2) * 4 / 3)
Call SetCursorPos(iX, iY)
End With
End If
End Sub