VBA打开工作簿时选择一个工作表

17 浏览
0 Comments

VBA打开工作簿时选择一个工作表

当我打开工作簿时,以下程序无法运行。可能的原因有哪些?

<代码>' 在工作簿打开时选择第一个工作表。

私有子程序 Workbook_Open()

Sheet4.Select

Sheet4.Range("B1").Select

结束子程序

0
0 Comments

问题的原因是在打开工作簿时,使用了"Select"方法但没有先激活一个工作表。当上一次关闭工作簿时,当前工作表仍然保存在内存索引中,当再次打开同一工作簿时,指针会根据索引号搜索最近使用的工作表。

解决方法是在工作簿打开时,使用VBA代码激活并选择一个工作表。以下是示例代码:

Private Sub Workbook_Open()
    Sheet4.Activate
    Sheet4.Select
    Sheet4.Range("B1").Select
End Sub

在使用"Select"方法时,必须先激活父对象,否则会出现问题。希望这能对你有所帮助。

0
0 Comments

问题的原因:

- 代码放置位置不正确。

解决方法:

1. 打开Excel文件后,按下alt+F11来进入VBA代码编辑器。

2. 在左侧的文件名下方,可以看到不同的工作表和可能存在的模块。

3. 找到ThisWorkbook模块,并将代码放置在其中。

4. 这样,在启动Excel文件时,代码将自动运行。

然而,尽管按照上述步骤操作,代码仍然无法正常工作。这可能是由于工作簿本身存在重大问题,因为这些代码在其他工作簿中正常运行。

0