gpt4 book ai didi

VBA 如何使用右键单击在用户窗体中复制和粘贴?

转载 作者:行者123 更新时间:2023-12-05 03:16:02 25 4
gpt4 key购买 nike

我想让用户能够将值粘贴到 VBA 用户窗体中的文本框中。您可以很好地使用 Ctrl-v,但并不是每个人都知道该怎么做。

如何使用右键单击菜单启用复制和粘贴?

最佳答案

我知道这是一篇旧帖子,但我相信有更有效的方法。
用户窗体上下文菜单类代码

http://www.andypope.info/vba/uf_contextualmenu.htm

代码示例甚至还有示例 Excel 电子表格。

类模块处理上下文菜单的构建、文本框右键单击的捕获和实际的剪切。复制和粘贴操作。该类使用用户窗体的 ActiveControl 对象。该代码甚至可以处理容器控件(例如 Frames 和 Multipage)中的控件。

以下来自用户窗体的初始化代码显示了定义和使用类对象是多么简单。您只需为该对象声明一个变量,然后为您希望具有上下文菜单功能的每个文本框设置一个引用。您可以遍历所有控件并自动引用每个文本框。

Private m_colContextMenus As Collection

Private Sub UserForm_Initialize()

Dim clsContextMenu As CTextBox_ContextMenu
Dim cTRL as Control

Set m_colContextMenus = New Collection

For Each cTRL In Me.Controls
Select Case TypeName(cTRL)
Case "TextBox"
'MsgBox cTRL.Name & ": " & Me.Controls(cTRL.Name).Value
Set clsContextMenu = New CTextBox_ContextMenu
With clsContextMenu
Set .TBox = Me.Controls(cTRL.Name)
Set .Parent = Me
End With
m_colContextMenus.Add clsContextMenu, CStr(m_colContextMenus.Count + 1)
Case Else
'MsgBox TypeName(cTRL) & ": " & cTRL.Name
End Select
Next

End Sub

Download example workbook which contains both .xls and .xlsm files

关于VBA 如何使用右键单击在用户窗体中复制和粘贴?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2202498/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com