【问题标题】:How to make mouse moves in Excel independent of screen resolution?如何在 Excel 中使鼠标移动独立于屏幕分辨率?
【发布时间】:2013-12-11 17:17:51
【问题描述】:

我想为一些同事创建一个 Excel 电子学习教程(混合学习)。 我想使用 vba/vbs 将鼠标移动到屏幕上并向他们显示不同命令的位置。 我知道这是可以做到的,但是当您更改屏幕分辨率时,它不再起作用。 有没有办法让它独立于屏幕分辨率?

即: 将鼠标缓慢移动到“Bold”按钮并单击它,无论当前选择的是哪个选项卡和屏幕分辨率?

感谢您的任何建议。

【问题讨论】:

  • 用屏幕录像机录制自己而不是编写复杂的 VBA 例程似乎可以节省大量时间。
  • Excel 不适用于此。但是,是的,有可能实现您想要的。但是,它非常复杂且不太实用。我赞同@PortlandRunner 的建议

标签: excel vba mouse


【解决方案1】:
  1. 最好使用屏幕视频捕获工具来实现这一点
  2. 如果您坚持,请在工作表上创建一个指针形状并使用某些版本的附加代码来移动它

    Sub MoveShape(shp As Shape, dbTop As Double, dbLeft As Double)
    Dim dbVerticalIncrement As Double, dbHorizontalIncrement As Double
    Dim lLoop As Long
    Const lSteps As Long = 1000
    
    
    dbVerticalIncrement = (dbTop - shp.Top) / lSteps
    dbHorizontalIncrement = (dbLeft - shp.Left) / lSteps
    
    For lLoop = 1 To lSteps
        shp.Top = shp.Top + dbVerticalIncrement
        shp.Left = shp.Left + dbHorizontalIncrement
        Application.Wait (Now() + 0.0000001)
    Next lLoop
    
    End Sub
    

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-12-26
    • 1970-01-01
    • 2015-11-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-12-11
    相关资源
    最近更新 更多