第五章 事件篇
5.2 Workbook_Open事件
这是一个工作簿事件,当代码所在的工作簿被打开时,触发该事件。
我们可以在工作簿打开时做一些初始化工作,比如弹出一个欢迎界面:
Private Sub Workbook_Open()
MsgBox '欢迎您回来继续工作!'
End Sub
让某个工作表处于激活状态、清空一些单元格区域:
Private Sub Workbook_Open()
Sheets('抽取表').Activate
Range('c3:c17').ClearContents
End Sub
把'抽取表'设为当前工作簿,并且清空'c3:c17'单元格区域里的内容(不清除格式)。
让用户输入密码,正确后才能打开表格:
Private Sub Workbook_Open()
100: mm = InputBox('请输入工作密码')
If mm <> '123' Then
MsgBox '密码输入错误,请重新输入!'
GoTo 100
End If
End Sub
如果用户输入的密码与预先设定的密码不相符,则用GoTo语句再次跳转到输入密码对话框,直到密码输入正确或者强行关闭工作簿为止。
打开工作簿后,在文件编辑前先做一个备份,防止修改错了,以前的功劳全打水漂:
Private Sub Workbook_Open()
日期 = Format(Now(), 'yyyymmdd')
ThisWorkbook.SaveCopyAs ThisWorkbook.Path & '\' & 日期 & '-' & ThisWorkbook.Name
End Sub
打开工作簿后,读取当前的时间,用Format函数将其中的日期格式化为'yyyymmdd'格式(yyyymmdd表示年月日,hhmmss为时分秒),然后用工作簿的SaveCopyAs方法在源文件目录下做一个加当前日期的备份文件。
Workbook_Open事件还有其它很多用途,只要我们想打开工作簿时,想让工作簿处于一个什么样的状态,或者需要提前做哪些操作,都可以在这个事件中一一编辑,以期让我们一打开工作簿,就会有一个良好的工作状态。
联系客服