当我设置某个工作表时,Excel会一直崩溃

时间:2017-12-21 17:30:17

标签: excel vba excel-vba

工作簿到达

时会一直崩溃

Set wsEDF = Worksheets("edf master")行。我试图删除工作表,然后恢复它,同样的事情发生。有点困惑。

Sub CopyGroups()
Application.ScreenUpdating = False
Set wsMarex = Worksheets("marex master")
Set wsMQ = Worksheets("macquarie master")
Set wsEDF = Worksheets("edf master")

有一个结束子加上所有变量都在顶部声明。此外,宏一度工作得很好。所以回到旧版本,并将根据以下的一些建议来改变它。

1 个答案:

答案 0 :(得分:1)

活动工作簿中没有名为edf master的工作表。 Watch for whitespace (leading and/or trailing)

如果活动工作簿为ThisWorkbook(即包含正在运行的代码的工作簿),则您不需要任何此类工作簿。

查看 Project Explorer (Ctrl + R)。在" Microsoft Excel Objects"您将为工作簿中的每个工作表找到一个类模块。单击一,然后按F4以显示属性框。

在工作表的属性中,您会看到它具有(Name)属性,可能会说Sheet1之类的内容。将其更改为有意义的内容,例如MarexMasterSheet,或MacquarieMasterSheet,或EDFMasterSheet

然后,您不再需要wsMarexwsMQwsEDF - 它们已经为您声明了,作为全局范围的Worksheet个实例。所以,说下一行代码是这样的:

Debug.Print wsMarex.CodeName

现在你可以这样做:

Debug.Print MarexMasterSheet.CodeName