如果单击宏,我在工作表“索引”上有一个宏我想创建一个新工作表并在其中复制另一个工作表的一部分(称为"template")。
我有以下代码可以完成这项工作:
Set new_sheet = Sheets.Add(after:=Sheets(Sheets.Count))
Sheets("Template").Range("A1:Z100").Copy
Destination:=Sheets(new_sheet.Name).Range("A1")
ActiveWindow.DisplayGridlines = False
Sheets("Index").Activate
但是,我不喜欢在几分之一秒内显示新工作表(我觉得这有点令人不安,就像一条潜意识信息)。我想留在“索引”表上。因此,
a) 有没有办法避免显示新创建的工作表;
b)如果a)的答案是否定的,有没有办法显示一个对话框,该对话框持续几分之一秒,如“Elaborating ...”,隐藏背景中发生的事情?
最佳答案
您可以设置ScreenUpdating
属性(property)给 True
或 False
在您的子开始时满足您的需求:
Application.ScreenUpdating = False
最后是:
Application.ScreenUpdating = True
见 here了解更多信息。
关于VBA:复制工作表而不显示它几分之一秒,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44139836/