所以我正在尝试创建一个宏,它将在文件打开时更新单元格。我得到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
答案 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
一些建议:
.
这将打开一个下拉列表,这样你也可以避免拼写错误。