Dim octl
With Application.CommandBars("Task Pane")
If Not .Visible Then
Application.ScreenUpdating = False
Set octl = Application.CommandBars(1).FindControl(ID:=809, recursive:=True)
If Not octl Is Nothing Then octl.Execute
.Visible = False
Application.ScreenUpdating = True
End If
End With
但是在EXCEL中运行该代码时,EXCEL会调出剪贴板控制窗口让你选择要作怎样的选择,能不能修改一下让其静默清空剪贴板。
您好,
这个可以通过 API 函数 FindWindowEx 先找到 Office 剪贴板的清空按钮的句柄,然后调用 API 函数 PostMessage 向这个按钮后台发送消息(WM_LBUTTONDOWN 和 WM_LBUTTONUP)来模拟鼠标单击按钮,详情请参考这篇文章:
http://amalfaro-wrk.tiddlyspace.com/ClearOfficeClipboard.XL.VBA
其实这个也可以通过 API 函数 EmptyClipboard 来清空 Windows 的剪贴板
Public Declare Function EmptyClipboard Lib "user32" Alias "EmptyClipboard" () As Long
温馨提示:答案为网友推荐,仅供参考