如何停用警报“剪贴板中的太多东西”


1

当我复制一些东西,并退出软件(excel或word,也许还有其他人)时,我有一个警报,询问我是否要保留或删除剪贴板的内容,因为它太大了。这种模态警报一次又一次地让我烦恼,这是一种禁用它的方法吗?

因为,如果我在剪贴板中复制某些内容,是的,我希望它保留在剪贴板中。

Answers:


3

据我所知,没有办法阻止此警告,因为Microsoft不希望您意外丢失数据(例如,在粘贴另一个程序中的某些文本之前关闭Word)。

这只是由于Windows剪贴板的工作方式。当您复制和粘贴内容时,对于现代程序,当尝试插入您复制的内容时,原始应用程序仍可能与目标应用程序进行交互。这就是你能够在Web浏览器中复制文本并将其作为HTML格式的文本插入到Word文档中的方式(反之亦然)。

虽然Windows剪贴板本身支持一些不同的媒体格式,但这样的技术允许开发人员扩展可能性。

如果您不希望出现警告,只需在关闭程序之前复制并粘贴您的内容,然后复制一些微小的内容(如单词或单元格),您将无法获得该消息。或者,您可以打开“剪贴板”面板(单击“插入”功能区上“剪贴板”部分右下角的箭头)并在关闭前删除片段。

您可以使用宏来自动执行此操作,如此处所述,虽然我不会真的推荐它,因为迟早您会丢失文本或格式化您希望保留的方式。

'Events: http://msdn.microsoft.com/en-us/library/bb208800.aspx
Sub AutoExit()
    ClearClipboard
End Sub

Sub ClearClipboard()
    Dim MyData As Object
    ' source: http://akihitoyamashiro.com/en/VBA/LateBindingDataObject.htm
    Set MyData = CreateObject("new:{1C3B4210-F441-11CE-B9EA-00AA006B1A69}")
    MyData.SetText ""
    MyData.PutInClipboard
    Set MyData = Nothing
End Sub

1
你的解释很棒!然而,宏只是在问题中所要求的相反,他需要保留剪贴板的内容,而不是清除它。
MátéJuhász2016年

@MátéJuhász对此不确定。对我而言,这听起来好像已经完成了复制。即使在手动确认操作后,您也无法真正拥有这两件事。
马里奥

抱歉,我对你的答案一无所知!如果一个人不想让我丢失数据,那么不要让我潜在地清除剪贴板。我不明白为什么html文本必须粘贴打开的原始应用程序...如果我没记错,Windows确实按预期工作,也许这个'功能'在最新版本的Windows中已经改变了(我希望!)。是的,我希望这些东西留在剪贴板上,而不是消失,所以我不能使用你的宏。
FredericP

虽然word仍然是开放的,但它并不是真正的HTML文本(或任何其他常见格式)。一旦Word被通知另一个请求键盘数据的应用程序,就要确定这一点。我不认为在将数据以简化形式保存在剪贴板中时,有任何方法绕过提示
Mario
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.