无法使用VBA清除办公室剪贴板

Das*_*ete 5 ms-access vba access-vba ms-access-2010

我正在使用一个函数从访问数据库中复制一堆图片并将它们存储到磁盘上.但是,此功能使用办公室剪贴板,剪贴板填满约150条记录并崩溃程序.这是我清理剪贴板的方法

Private Declare Function apiOpenClipboard Lib "user32" Alias "OpenClipboard" (ByVal hwnd As Long) As Long
Private Declare Function apiEmptyClipboard Lib "user32" Alias "EmptyClipboard" () As Long
Private Declare Function apiCloseClipboard Lib "user32" Alias "CloseClipboard" () As Long

Sub EmptyClipboard()
    Call apiOpenClipboard(0&)
    Call apiEmptyClipboard
    Call apiCloseClipboard
End Sub
Run Code Online (Sandbox Code Playgroud)

任何人都知道如何更有效地清除剪贴板

Sea*_*anC 1

您所使用的功能是指Windows剪贴板。这与Office 剪贴板不同

我发现清除剪贴板的唯一代码是Application.CommandBars("Clipboard").Controls(4).Execute,但由于我禁用了办公室剪贴板(并且显然无法启用它),我看不到这是否是实际的解决方案