打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
Excel VBA解读(96):Workbook对象的BeforeSave事件


在保存工作簿之前,发生Workbook_BeforeSave事件。其语法为:

Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel AsBoolean)

 

说明:

  • 参数SaveAsUI为布尔值,如果设置为True,将打开“另存为”对话框。

  • 参数Cancel为布尔值,当该事件发生时为False。如果将该参数设置为True,则不会保存工作簿。

 

示例1:让用户决定是否保存工作簿

下面的代码在保存工作簿前,给出提示信息,让用户决定是否保存工作簿。

Private SubWorkbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)

   Dim str

   str = MsgBox('希望保存工作簿吗?', vbYesNo)

   If str = vbNo Then Cancel = True

End Sub

 

在保存工作簿时,弹出如图1所示的消息框,供用户选择是否保存该工作簿。

1

 

示例2:限定用户必须在指定的单元格中输入数据

在工作簿保存前,检查指定的单元格中是否包含数据。如果这些单元格中没有全部输入数据,那么不会保存该工作簿。也就是说,关闭该工作簿时,不会保存对该工作簿所做的修改。

Private SubWorkbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)

   If WorksheetFunction.CountA(Worksheets('Sheet1'). _

        Range('A1,A3,C2,D1')) < 4Then

        MsgBox '不能保存本工作簿!!!' & vbCrLf & _

               '因为单元格A1,A3,C2,D1没有输入数据!'

               Cancel = True

   End If

End Sub

 

将工作表Sheet1中的单元格D1留空,单击“保存”按钮,会弹出如图2所示的消息框。只有当工作表Sheet1中的单元格A1A3C2D1都输入有数据时,才能够正常保存该工作簿。

2

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
VBA 工作簿workbook常用的事件,比如聚光灯,禁止保存,禁止关闭EXCEL,禁止打印,监测内...
Xcel事件
自学资料(Excel VBA)[收集整理16]
Excel 工作簿、工作表事件例子
跟烟花入门VBA之37:Workbook对象(五)
VBA实战技巧:快速返回最后一次编辑的单元格
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服