VBA-获取鼠标移动事件中的标签名称

2024-01-15

我有以下问题。我的工作表中有很多以结构化方式命名的标签(Label1、Label2、...、Label9),并为所有标签分配了鼠标移动事件宏。我想获取表A1:A9中的第i个值,其中“i”是当前“触摸”的标签号。有没有一种简单的方法可以在 mouse_move 事件(或其他一些事件,如 Change_event)期间获取标签的名称。它看起来类似于这个

Private Sub Label47_MouseMove(ByVal Button As Integer, ByVal Shift As Integer,
                              ByVal X As Single, ByVal Y As Single)

Dim label_name as String
Dim which_one as Integer
Dim val as Integer

label_name = "something like ActiveLabel.Name"
which_one = CInt(right(label_name,1))
val = Cells(which_one,1).Value

                rest code....

End Sub

谢谢你的帮助


您可以使用类模块和WithEvents做你需要做的事。以下代码应该让您朝着正确的方向前进:

'weMouseMove class module:
Private WithEvents mLbl As MSForms.Label
Private mLabelColl As Collection

Sub LabelsToTrack(Labels As Variant)
    Set mLabelColl = New Collection
    Dim i As Integer
    For i = LBound(Labels) To UBound(Labels)
        Dim LblToTrack As weMouseMove
        Set LblToTrack = New weMouseMove

        Dim Lbl As MSForms.Label
        Set Lbl = Labels(i)

        LblToTrack.TrackLabel Lbl
        mLabelColl.Add LblToTrack
    Next i
End Sub

Sub TrackLabel(Lbl As MSForms.Label)
    Set mLbl = Lbl
End Sub

Private Sub mLbl_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, _
                           ByVal X As Single, ByVal Y As Single)
    MsgBox mLbl.Name & ": " & mLbl.Caption
End Sub

在您的用户表单代码模块中:

Dim MouseMove As New weMouseMove

Private Sub UserForm_Initialize()
    MouseMove.LabelsToTrack Array(Me.Label1, Me.Label2)
End Sub
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

VBA-获取鼠标移动事件中的标签名称 的相关文章

随机推荐

  • 检测移动 Web 应用程序是否位于本机 Facebook 应用程序中

    有没有办法检测我们的移动 Web 应用程序是否显示在本机 Facebook iOS 应用程序的 WebView 内 或者是否独立运行 据我们了解 我们不允许从他们的框架内获取 Facebook 积分 但我们are允许从我们自己的独立 Web
  • VBA宏使用单元格路径保存Excel文件

    我正在尝试使用硬线和单元格值的组合来保存文件以确定文件路径 In cell A29 我有一个输出这个的公式 2014 1月 高额现金 1 7 14 我得到一个预期 声明结束 error 代码是 ActiveWorkbook SaveAs F
  • 正则表达式替换%variables%

    我已经用了 30 分钟的时间来拔一撮头发了 我有一本字典 像这样 search replace foo bar 还有一个像这样的字符串 Foo bar foo search 我想用字典中的等效文本替换每个变量 Foo bar bar rep
  • Gradle:如何在控制台上打印依赖项工件 URL

    我们从maven转移到gradle 在maven中 使用build命令 我们可以清楚地看到从中获取依赖项的nexus URL 使用 gradle 我如何在项目构建时查看依赖项 URL 是否有任何命令行选项可以在 gradle 中执行此操作
  • 如何在 Laravel 队列中使用模型

    我正在尝试将邮件列表从 CSV 导入到我的数据库中 我的 Laravel 中有两个模型负责执行此操作 Target and Mailing one Target有很多Mailings 我正在使用带有 Beanstalkd 的队列系统 我在用
  • Redmine 3.3.0 (ruby on Rails 4.2.6) 样式表未生成/包含在 application.css 中

    我已经安装了 redmine 并设法启动它 但 UI 似乎缺少它的 css 样式 如果我点击 application SomeId css 的链接 它会显示一个包含以下消息的空 css This is a manifest file tha
  • UIGestureRecognizer 接收触摸但也将其转发给 UIControl

    你会如何允许UIGestureRecognizer of a UIView接收触摸事件 但也确保另一个 底层 上层UIView也收到同样的触摸事件 Lets say I have got the following view hierach
  • 三角形带上的纹理坐标

    我创建了一个带有 14 个顶点的几何着色器的立方体 感谢三角形条 现在的问题是如何放置我的纹理坐标 我有一个包含 3 个纹理的图像文件 立方体的顶面 底面 左 右 前 后面 我找不到为每个顶点提供纹理坐标的方法 14 我总是得到奇怪的纹理显
  • Python 3.5.1:QVariant 表示映射类型,无法实例化

    我正在使用 Python 3 5 1 我正在尝试运行此代码 但 QVariant 有问题 from PyQt4 QtCore import from PyQt4 QtGui import import sys class Model QAb
  • Python 多处理:比请求的进程更多

    为什么我看到这么多 python 进程在运行 在htop on RHEL 6 当我只使用 1 个核心时 对于相同的脚本 对于每个任务 我都会初始化一个管理处理的工作类 它会初始化其他类 但不会初始化任何子进程 tasks multiproc
  • Android SDK 的快速位图模糊

    目前 在我正在开发的 Android 应用程序中 我正在循环遍历图像的像素以使其模糊 对于 640x480 图像 这大约需要 30 秒 在浏览 Android Market 中的应用程序时 我遇到了一个包含模糊功能的应用程序 并且它们的模糊
  • 尝试启动 Firefox 时出现 Python Selenium 错误

    我在 ipython 笔记本中尝试使用 Selenium 打开 Firefox 时遇到错误 我环顾四周 发现了类似的错误 但没有任何错误与我收到的错误完全匹配 有人知道问题可能是什么以及我如何解决它吗 我使用的是 Firefox 22 我输
  • 在 Rakefile 中设置 rspec 2 任务

    我有一个看起来像这样的 Rakefile require rspec core rake task desc Run all RSpec tests RSpec Core RakeTask new spec 但这不起作用 例如 如果我尝试运
  • React 表单组件 onSubmit 处理程序不工作

    我有以下 React 组件 class Form extends React Component handleSubmit e e preventDefault let loginInput ReactDOM findDOMNode thi
  • Spring 事务因 iptables 命令而挂起

    作为进程错误处理的一部分 我们尝试使用以下 iptables 命令禁用进程与数据库计算机侦听器端口之间的通信 iptables A INPUT p tcp destination port
  • Cloud Foundry如何处理进程隔离?

    假设我使用 上提供的开源 Cloud Foundry 实现设置了自己的云cloudfoundry org http www cloudfoundry org 我部署的每个应用程序都会作为单独的用户运行吗 或者这里使用了VMWare的虚拟化技
  • MVC 中的 Bootstrap 模式,双背景 - 背景出现两次

    我在使用 jQuery 生成引导模式时注意到一个问题 在动态生成的部分视图 我的模式 中添加更多 JavaScript 会导致出现双背景 有谁知道为什么会发生这种情况 我正在使用 jquery 1 8 2 js 和 Bootstrap v3
  • 通过HTA触发宏的VBS(无法运行宏)

    我有一个 HTA 脚本 它最终触发代码的 vbs 部分来调用 VBA 宏 但由于某种原因我收到此错误 我已经确保启用了对 VBA 的信任访问 因此我觉得我的代码中的某些内容与 HTA 不兼容 这是代码 提前感谢您的宝贵时间
  • 根据特定条件连接 RxJ 中的两个可观察流

    我有两个对象流 帐户和余额 我需要根据以下内容合并 加入 两个流id and account id var accounts Rx Observable from id 1 name account 1 id 2 name account
  • VBA-获取鼠标移动事件中的标签名称

    我有以下问题 我的工作表中有很多以结构化方式命名的标签 Label1 Label2 Label9 并为所有标签分配了鼠标移动事件宏 我想获取表A1 A9中的第i个值 其中 i 是当前 触摸 的标签号 有没有一种简单的方法可以在 mouse