Excel文件打开宏

时间:2017-10-30 21:31:51

标签: excel vba excel-vba object runtime-error

所以我正在尝试创建一个宏,它将在文件打开时更新单元格。我得到424错误,所以我试图更好地定义我的代码/对象,但它仍然没有成功。我想我错过了/忽略了一些非常简单的东西但是我无法弄清楚这是我的第一个项目所以我正在努力学习并获得更好的理解,然后只是谷歌搜索一段可行的代码。

Private Sub Auto_Open()

    Dim Try1 As String
    Try1 = ActivateSheet.Cells(3, 2).Select
    Tryl = "-"

    ' My first attempt is shown below
    '
    'Sheets("Current Calc").Activate
    'ActivateSheet.Cells(3, 2).Value = "-"

End Sub

2 个答案:

答案 0 :(得分:2)

您的评论代码中存在拼写错误

你有什么......

Sheets("Current Calc").Activate
ActivateSheet.Cells(3, 2).Value = "-"

应该是什么......

Sheets("Current Calc").Activate
ActiveSheet.Cells(3, 2).Value = "-"

另外,我应该提一下,除非必要,否则应避免使用.Activate.Select。话虽如此,我建议使用以下代码......

Sheets("Current Calc").Cells(3, 2).Value = "-"

修改

使用Auto_Open时,必须打开手动才能执行代码;因此,如果它通过VBA打开,则此事件不会触发。如果您希望通过VBA和手动触发事件,我建议您使用Workbook_Open

答案 1 :(得分:1)

尝试使用以下子项:

Private Sub Workbook_Open()

    Dim Try1 As String

    Try1 = ActiveSheet.Cells(3, 2).Select
    Tryl = "-"

End Sub

一些建议:

  1. 以小写形式编写代码。当您更改一行时,您的代码将自动更改为大写和小写,这样您就可以检测到是否存在拼写错误。
  2. 编写一个函数或对象ant类型.这将打开一个下拉列表,这样你也可以避免拼写错误。