VBA:检测用户窗体的任何文本框中的更改

2023-12-05

有一个用户表单有很多文本框,我需要检测每个文本框的更改。因此,我为表单中的每个文本框编写了一个子例程,结果是一大段代码。 由于每个文本框的代码都是相同的,我想优化它。那么是否可以只编写一个子例程来检测表单的任何文本框中的更改?


实现这一目标的唯一方法是使用一个类WithEvents

这是一个最小的例子:

名为的类模块的代码mytextbox:

Private WithEvents txtbox As MSForms.TextBox


Public Property Set TextBox(ByVal t As MSForms.TextBox)
    Set txtbox = t
End Property


Private Sub txtbox_Change()
    ' code for handling the event
End Sub

以及用户窗体内的代码,假设您要处理每个文本框的事件

Private myEventHandlers As Collection

Private Sub UserForm_Initialize()
    Dim txtbox As mytextbox

    Set myEventHandlers = New Collection

    Dim c As Control
    For Each c In Me.Controls
        If TypeName(c) = "TextBox" Then
            Set txtbox = New mytextbox

            Set txtbox.TextBox = c

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

VBA:检测用户窗体的任何文本框中的更改 的相关文章

随机推荐

  • 通过API网关在aws Lambda中获取json正文

    我目前正在使用 NodeJS 通过 AWS Api Gateway 在 AWS lambda 上构建机器人 但遇到了 POST 请求和 JSON 数据的问题 我的 api 使用 使用 Lambda 代理集成 甚至当我测试代理发送 Appli
  • FileReader API 在 jsFiddle 中工作,但不适用于本地文件

    我正在开发一个 Chrome Firefox 扩展 它将使用文件 API 在本地存储文件 我正在尝试启动并运行一个示例 但遇到了似乎以 Chrome 为中心的问题 谁能解释一下为什么这个jsFiddle工作正常 但是完全相同的代码 当从本地
  • 3D球体标签云[关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 目前不接受答案 有谁知道如何实现 3D 球体标签云 就像在这个网站上一样 http krypted com 是否有一个 Javascript 库可以轻松做到这一点
  • 努力在shinyapps.io中将我自己的API密钥与googlesheets4一起使用

    我已经让 googlesheets4 在shinyapps io 中工作 代码如下 gs4 auth email email protected path NULL scopes https www googleapis com auth
  • MATLAB:循环绘图

    我尝试在循环内进行绘图 但它仅打印最后一个绘图 我该如何修复它 我尝试过使用hold on and drawnow在情节定义之后但它不起作用 这是我的代码 for t 1 5 alive Game World Generations spe
  • 性能调优 WCF 服务

    对于 WCF Web 服务来说 最重要的性能调整领域是什么 ASP net 线程设置 WCF 节流 请查看下面的文章和白皮书 我认为它们应该为您提供更具体的性能考虑因素供您探索 并可能提供一些非常实用的设置来调整 优化或更改 我也在另一个问
  • 如何使用 python 在heroku 中连接 postgresql 时使用 dj-database-url

    我来这里是因为我对 heroku python django postgresql 小组非常陌生 我在 google 上搜索了 dj database url 的用法 但我不明白为什么在开发需要与 postgresql 连接的 python
  • CakePhp 错误的身份验证重定向

    我刚刚开始学习 Auth 组件 但在重定向方面遇到了问题 我的本地应用程序的路径是 localhost school 但是当登录的用户尝试访问某个网址时 他不允许该网站重定向到 localhost school school 并显示 请求的
  • jQuery UI 令牌

    我按照本教程使用 jQuery UI 生成 Facebook 令牌 例如 http net tutsplus com tutorials javascript ajax how to use the jquery ui autocomple
  • 自动装配到列表中时的 Bean 顺序

    我定义了一个接口IWorker以及它的一些实现WorkerA and WorkerB 都注释为 Component 然后我通过以下方式将它们自动连接到我的应用程序中 Autowired private List
  • 如何从 NSData 字符串数据(不是 UIImage)创建 CGImageRef

    如何在没有 UIImage 的情况下创建新的 CGImageRef 我不能使用image CGImage 我从服务器进程接收到一个以 std string 形式存在的 Base64 编码图像 下面代码的第一部分模拟接收编码字符串 UIIma
  • 股票预测:GRU 模型预测相同的给定值而不是未来的股票价格

    i was just testing this model from kaggle post this model suppose to predict 1 day ahead from given set of last stocks A
  • 为什么colspan影响html表格边框

    所以我偶然发现了一些对我来说似乎很奇怪的东西 例如 以下代码 table tr td align center style border 3px solid black Title td tr tr td style border 2px
  • 如何检查jframe是否打开?

    我下面的代码创建一个新数组并将其发送到聊天 jFrame String info1 new String 3 username userid userid2 are variables info1 0 username4 info1 1 u
  • 如何更改JsRender模板标签?

    我用树枝 它使用这些标签 name 我想将 JsRender 包含在我的项目中 但 JsRender 也使用相同的标签 name 所以存在冲突并且没有任何作用 如何使用自定义标签更改默认的 JsRender 标签 类似于 Ruby UPD
  • PyQT 布局之间的导航

    下面是我的应用程序代码 它允许您在窗口之间切换 该菜单有两个编程选项 例如 详细报告 和 所有公司 现在加载布局后 我不知道如何将按钮放在这两个视图中 以允许您将视图从 详细报告 更改为 全部 公司 反之亦然 你能帮助我吗 class Ap
  • Stackdriver 日志记录中不会创建任何日志

    在我的谷歌应用程序脚本中 我有 Logger log test 我什至尝试过 console log test 但即使我将项目 id 设置为 Google Cloud 项目 id 也不会打印到 stackdriver 日志中 屏幕显示 为了
  • .NET 中将 int 转换为位数组

    如何将 int 转换为位数组 如果我例如有一个值为 3 的 int 我想要一个长度为 8 的数组 如下所示 0 0 0 0 0 0 1 1 这些数字中的每一个都位于数组中大小为 8 的单独槽中 Use the BitArray class
  • MySQL 多数据库设置

    我已经寻找了这个问题的答案 我似乎能找到的只是一些问题 询问是使用多个数据库还是在单个数据库中使用多个表更好 但这不是我的问题 问题 1 我想在当前数据库旁边设置一个新数据库 但不知道如何操作 我想授予用户对 DB2 的完全管理员访问权限
  • VBA:检测用户窗体的任何文本框中的更改

    有一个用户表单有很多文本框 我需要检测每个文本框的更改 因此 我为表单中的每个文本框编写了一个子例程 结果是一大段代码 由于每个文本框的代码都是相同的 我想优化它 那么是否可以只编写一个子例程来检测表单的任何文本框中的更改 实现这一目标的唯