永发信息网

如何在宏中用VBA语句判断当前的 excel 文件是否有修改且未保存。

答案:1  悬赏:40  手机版
解决时间 2021-03-10 11:53
  • 提问者网友:蓝莓格格巫
  • 2021-03-09 21:45
我是想,如果当前文件已被修改且没有保存,则用在关闭时用宏自动做一些数据处理,反正在用户关闭时,Excel本身会提示是否保存的。
但是,如果用户打开文件后啥都没有改,那宏也啥都别做,避免用户关闭时提示是否保存(因为宏改动了数据)。因为正常情况下用户没有改动的话,关闭文件时,Excel是不会提示保存的。

我的问题:宏中用VBA语句来如何判断当前的文件是否有修改且没有保存?(就是说此时用户关闭文件,Excel会提示是否保存)
谢谢!
最佳答案
  • 五星知识达人网友:持酒劝斜阳
  • 2021-03-09 23:16
Saved 属性
如果指定工作簿从上次保存至今未发生过更改,则该值为 True。Boolean 类型,可读写。

说明
如果工作簿从未进行保存,则其 Path 属性将返回一空字符串 ("")。

如果要关闭某个已更改的工作簿,但又不想保存它或者不想出现保存提示,则可将此属性设为 True。

示例
本示例检查活动工作簿是否有未保存的更改,如果有,则显示一条信息。

If Not ActiveWorkbook.Saved Then
MsgBox "This workbook contains unsaved changes."
End If

本示例通过将 Saved 属性设为 True 来关闭包含本段代码的工作簿,并放弃对该工作簿的任何更改。

ThisWorkbook.Saved = True
ThisWorkbook.Close
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯