我从“Workbook_BeforeClose”中理解的是,点击“X”关闭Excel后命令应该有效。
我的代码是;
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Sheets("Makro").Range("A2") = 0
End Sub
当我重新打开这个excel工作簿时,我想看到范围“A2”为零(“0”)。但我重新打开了excel,它不是零。我无法理解。
我想知道我是否误解了这个vba代码。
如果你对我有所帮助,我将非常感谢你。
答案 0 :(得分:2)
试一试,
Option Explicit
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Me.Worksheets("Makro").Range("A2") = 0
Me.Save
End Sub
如果您不想保存,请将其更改为
Option Explicit
Private Sub Workbook_Open()
Me.Worksheets("Makro").Range("A2") = 0
End Sub
答案 1 :(得分:0)
Private Sub Auto_Open()
Sheets("Makro").Range("A2") = 0
End Sub
或
Private Sub Auto_Close()
Sheets("Makro").Range("A2") = 0
End Sub
代码解决了我的问题。
谢谢。
答案 2 :(得分:0)
您可以尝试以下方法:
Private Sub Workbook_BeforeClose(取消为布尔值)
使用表格(“Sheet1”)。范围(“a2”)
.Value = "ABC"
结束
End Sub
答案 3 :(得分:0)
发现这个问题试图解决我的问题,结果他们的代码是正确的。
不需要 Option Explicit
或 Save
只要确保你有
Private Sub Workbook_BeforeClose(Cancel As Boolean)
在 ThisWorkbook
窗口中。如果它位于其中一个工作表或模块中,它将无法工作。