vba - 在工作簿关闭时禁用 Excel VBA 中的剪贴板提示

标签 vba excel clipboard

我有一个 Excel 工作簿,它使用 VBA 代码打开另一个工作簿,将一些数据复制到原始工作簿中,然后关闭第二个工作簿。

当我关闭第二个工作簿(使用 Application.Close)时,我收到以下提示:

Do you want to save the clipboard.

VBA 中是否有命令可以绕过此提示?

最佳答案

我可以提供两种选择

  1. 直接复制

根据你的描述,我猜你正在做类似的事情

Set wb2 = Application.Workbooks.Open("YourFile.xls")
wb2.Sheets("YourSheet").[<YourRange>].Copy
ThisWorkbook.Sheets("SomeSheet").Paste
wb2.close

如果是这种情况,则无需通过剪贴板进行复制。此方法直接从源复制到目标。剪贴板中没有数据 = 无提示

Set wb2 = Application.Workbooks.Open("YourFile.xls")
wb2.Sheets("YourSheet").[<YourRange>].Copy ThisWorkbook.Sheets("SomeSheet").Cells(<YourCell")
wb2.close
  • 禁止提示
  • 您可以通过设置来阻止所有警报弹出窗口

    Application.DisplayAlerts = False
    
    <小时/>

    [编辑]

  • 仅复制值:根本不要使用复制/粘贴
  • Dim rSrc As Range
    Dim rDst As Range
    Set rSrc = wb2.Sheets("YourSheet").Range("YourRange")
    Set rDst = ThisWorkbook.Sheets("SomeSheet").Cells("YourCell").Resize(rSrc.Rows.Count, rSrc.Columns.Count)
    rDst = rSrc.Value
    

    关于vba - 在工作簿关闭时禁用 Excel VBA 中的剪贴板提示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5163265/

    相关文章:

    webview - 无法粘贴到 JavaFX WebView 上的 ACE 编辑器中

    javascript - 为什么 document.execCommand ("copy") 在 Internet Explorer 11 中不再有效?

    vba - 如何在VBA中同时单击和拖动约会对象时捕获Appt_Write事件

    arrays - 有没有更快的方法来比较 VBA 中动态数组之间的数据?

    vba - 仅使用值(而不是公式)导出工作表

    excel - 从 VS2015 打开 TFS 查询到 MS Excel 时出错(TF80068)

    arrays - 显示数组 VBA excel 中的一些值

    excel - 如何查看单元格内图片的名称?

    python - 打开openpyxl保存的工作簿时Excel有不可读的内容

    javascript - 通过链接使用 Rails 和 Javascript 复制到剪贴板