gpt4 book ai didi

vba - VBA 右键粘贴问题

转载 作者:行者123 更新时间:2023-12-04 20:36:37 25 4
gpt4 key购买 nike

我正在创建一个弹出菜单以粘贴到 Excel 工作表上的 ActiveX 文本框中。弹出窗口有效,但“粘贴”选项显示为灰色。

Private Sub txtInput_MouseUp(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
If Button = vbKeyRButton Then
Call ShowMenu
Application.CommandBars("MyMenu").ShowPopup
End If
End Sub



Sub ShowMenu()
'Remove any old instance of MyPopUp
On Error Resume Next
CommandBars("MyMenu").Delete
On Error GoTo 0

With CommandBars.Add(name:="MyMenu", Position:=msoBarPopup)
With .Controls.Add(Type:=msoControlButton, ID:=22)
.Enabled = True
End With
End With
End Sub

我在 .Enabled = True 中添加了但这并没有解决问题。我确定我缺少一些基本的东西。

附加问题,一旦用户可以点击粘贴,我必须添加 OnAction并引用一个 sub 让它实际将文本粘贴到文本框中,或者使用 ID 为 22 的 msoControlButton 足以指示文本的粘贴?

最佳答案

Additional question, once the user can click paste, do I HAVE to add OnAction and refer to a sub to have it actually paste the text into the textbox or is using the msoControlButton with ID 22 enough to indicate the pasting of text?



不,您实际上也不需要使用,因为 ActiveX TextBox类有 Paste您可以使用的方法。因此,在 cmdPasteButton_Click 中支持@Mukul Varney 的回答事件过程,您可以简单地执行以下操作:
txtInput.Paste

这应该将剪贴板内容粘贴到文本框中的光标位置。
Private Sub cmdPasteButton_Click(ByVal Ctrl As Office.CommandBarButton, CancelDefault As Boolean)
txtInput.Paste

CancelDefault = True
End Sub

关于vba - VBA 右键粘贴问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41598179/

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