如何检查剪贴板是否没有文字?

时间:2016-02-24 06:54:59

标签: vba word-vba clipboard

如果我尝试从空剪贴板粘贴,我会收到错误消息。我想在粘贴之前检查剪贴板是否没有文本,以便我可以避免这种情况。如何实现这一目标?我知道可以通过错误处理完成,但我更喜欢一种避免错误的方法。

编辑 - 每个请求,添加创建错误和错误消息的代码:

导致问题的代码:

Sub PasteFromEmptyClipBoard()

    Selection.Paste

End Sub

我收到错误消息:

Glype Proxy

"运行时错误' 4605'此方法或属性不可用,因为剪贴板为空或无效。"

1 个答案:

答案 0 :(得分:4)

非常重要 :您必须首先设置对" Microsoft Forms 2.0对象库的引用" (在下面附带的屏幕截图中)在实现此代码之前。滚动参考库时,您可能会发现它不是一个选项。要使其显示,只需将一个表单添加到项目中(您以后可以随时删除该表单)。

enter image description here

Sub CheckClipboard()

        Dim myDataObject As DataObject

        Set myDataObject = New DataObject


        myDataObject.GetFromClipboard


        If myDataObject.GetFormat(1) = True Then 

            '''There is text on clipboard, so it's safe to paste

        Else 
            '''there is no text on the clipboard, so you may get error.

        End If

End Sub