Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在带有专用接头的工作表之间移动时Excel图形出现故障?_Excel_Vba - Fatal编程技术网

在带有专用接头的工作表之间移动时Excel图形出现故障?

在带有专用接头的工作表之间移动时Excel图形出现故障?,excel,vba,Excel,Vba,当在一张工作表上运行私有sub,然后使用宏跳转到另一张有私有sub的工作表时,我遇到了一个奇怪的图形故障。基本上excel的速度变慢了(功能区中的下拉菜单也被弄乱了) 即: 第1页有 Private Sub Worksheet_Deactivate() Sheets("Sheet1").Visible = False End Sub 工作表2也有上述代码,但当停用工作表时,工作表2将被隐藏 在sheet1上放置一个按钮,触发以下宏 Sub Sheet1_Button1_Click() S

当在一张工作表上运行私有sub,然后使用宏跳转到另一张有私有sub的工作表时,我遇到了一个奇怪的图形故障。基本上excel的速度变慢了(功能区中的下拉菜单也被弄乱了)

即: 第1页有

Private Sub Worksheet_Deactivate()

Sheets("Sheet1").Visible = False

End Sub
工作表2也有上述代码,但当停用工作表时,工作表2将被隐藏

在sheet1上放置一个按钮,触发以下宏

Sub Sheet1_Button1_Click()

Sheets("Sheet2").Visible = True
Sheets("Sheet2").Select

End Sub
出于测试目的,我只是在sheet2上使用另一个宏指定的按钮,该按钮跳回到Sheet1,并发现导致问题的原因。有人知道这里发生了什么,以及如何预防吗?也许这更像是微软的问题


在我最初的工作簿中,我在“Cost Estimations”工作表上有一个私有子表,该表将运行一些代码来取消隐藏引用另一工作表的表中的已用行,并重新隐藏未使用的行。然后我在同一张纸上有一个宏指定的按钮,可以打开一个通常隐藏的纸,上面有更多的信息。“hidden”工作表上有一个私有的sub,当用户点击工作表时,它会自动隐藏它,就像我示例中的“Sheet1”一样。此外,在原始工作簿中,它导致“成本估算”中的所有信息显示在“隐藏”表上,但前提是计算设置为自动。但是,我无法在测试工作表中复制它。

一个好的代码将直接引用它需要操作的数据,然后将数据复制到内存中,在内存中执行操作,然后将结果再次“吐出”到直接引用的位置。这意味着它将避免激活事物等。您应该通过关键字ScreenUpdate搜索如何提高VBA代码性能。如果你有更多的计算、表格和操作,它不仅会出现小故障,而且首先视觉会冻结,然后是excel,最终甚至是您的computer@DannyPapadopulos我使用的两段代码只是最初选择工作表时的专用子代码,以确保用户选择选项卡时某些行/其他工作表处于隐藏/取消隐藏状态。代码本身并没有试图导致任何额外的计算或事情发生,只是隐藏/取消隐藏内容,所以我不确定您的评论如何应用?你建议我做什么不同的事?