取消隐藏列时,Excel 2013崩溃

我花了几个小时试图找出解决办法,迄今没有find。 我有一个macros(见下文),在电子表格中隐藏/隐藏范围。 似乎很简单,前两次我运行这个macros,它工作正常; 然而,第三次,总是取消隐藏范围,通常会导致Excel 2013崩溃。 我在这里读到,在我隐藏范围内有一个易变的用户定义函数可能会导致问题,但我已经尝试使该函数不易挥发,Excel仍然崩溃。 有没有人有任何想法或经历过这个?

Sub HideShowSQLCreator(control As IRibbonControl) Dim SQL_Creator As Range Dim Report_Home_Cell As Range Set SQL_Creator = Sheets("Report").Range("SQL_Creator") Set Report_Home_Cell = Sheets("Report").Range("Report_Home_Cell") If SQL_Creator.EntireColumn.Hidden = False Then SQL_Creator.EntireColumn.Hidden = True Report_Home_Cell.EntireRow.Select ActiveWindow.FreezePanes = True ActiveSheet.Range("Report_Home_Cell").Select Exit Sub End If If SQL_Creator.EntireColumn.Hidden = True Then SQL_Creator.EntireColumn.Hidden = False ActiveWindow.FreezePanes = False SQL_Creator.Select Exit Sub End If End Sub 

所以,我感到沮丧,并认为工作簿只是损坏,所以我从头开始创build一个新的。 macros一直工作正常,直到我到了最后,并意识到崩溃必须做一个大的数据透视表的权利,我想隐藏/取消隐藏的范围。 我不知道为什么会发生这种情况,但是我的解决scheme就是把我试图隐藏/取消隐藏的工作簿放在工作簿中。 macros在单独的工作表中正常工作。 奇怪的东西,但我很高兴最终有一个解决scheme。