31

好吧,首先我在谷歌搜索时找到了几个答案,但大多数论坛都被我屏蔽了,Office Network因此在这里问这个问题!另一个目的是用简单的英语得到答案:P

我知道如果我们设置Application.CutCopyMode = False然后复制/剪切结果将消失(即内存将被清除)但是我们什么时候应该使用它,什么时候不使用它?有人可以帮忙吗?

4

3 回答 3

37

通过引用此(http://www.excelforum.com/excel-programming-vba-macros/867665-application-cutcopymode-false.html)链接,答案如下:

Application.CutCopyMode=False当您执行复制/剪切单元格并粘贴时,会在宏记录器生成的代码中看到 . 宏记录器在单独的语句中进行复制/剪切和粘贴,并将剪贴板用作中间缓冲区。我认为Application.CutCopyMode = False清除剪贴板。There is a large amount of information on the Clipboard....'如果没有该行,当您关闭剪贴板上有大量数据的工作簿时,您将收到警告 ' 。

使用优化的 VBA 代码,您通常可以在一个语句中执行复制/剪切和粘贴操作,因此不使用剪贴板,Application.CutCopyMode = False也不需要剪贴板,您也不会收到警告。

于 2013-07-12T05:53:50.370 回答
16

通常,当您复制一个单元格时,您会在状态栏中找到以下语句(在工作表底部)

“选择目的地并按 Enter 或选择粘贴”

然后按 Enter 或选择粘贴来粘贴单元格的值。

如果您之后没有按 Esc,您将能够多次粘贴单元格的值

Application.CutCopyMode = False与 Esc 按钮的作用相同,如果您将其从代码中删除,您会发现您可以再次粘贴单元格值多次。

如果您在未按 Esc 的情况下关闭 Excel,您将收到警告“剪贴板上有大量信息......”

于 2016-02-04T12:06:33.610 回答
1

https://stackoverflow.com/a/33833319/903783有一个很好的解释

根据 xlCutCopyMode 枚举(https://msdn.microsoft.com/en-us/VBA/Excel-VBA/articles/xlcutcopymode-enumeration-excel),预期的值似乎是 xlCopy 和 xlCut ,但是 0 值(这是VBA 中的 False 等于什么)似乎对清除剪​​贴板上的 Excel 数据很有用。

于 2018-08-13T00:56:15.750 回答