如何通过宏代码,使得EXCEL只要一旦改动后就自动保存一次,就是只要录入新的数据,就会执行保存在线等,很
发布网友
发布时间:2022-04-23 00:39
我来回答
共3个回答
热心网友
时间:2023-10-09 10:36
如果你每改动一次就自动保存,那样会很慢的,如果你的EXCEL文档很大或者电脑配置很差,那会是件很痛苦的事情哦。建议你在关闭时设置自动保存就行了,方法如下:
打开宏编辑器,选择左边的ThisWorkbook,在里面输入下面代码就会在关闭前自动保存:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
ThisWorkbook.Save
End Sub
如果你实在想每次修改就保存,那么就输入下面的代码:
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
ThisWorkbook.Save
End Sub追问非常感谢您 其实 我想共享一个EXCEL 就是让两个人同时使用,所以想两台电脑的画面尽可能同步(自带最小都要5Min),只有保存,才能使得画面保持一致,所以我想只要一旦有数据改动,就自动执行保存,这样就可以两边基本同步。所以关闭前自动保存是没多大意义~
但是我刚试了下您的下面那个宏 ,我测验了 输入新数据后直接退出来依然询问是否保存啊,难道是没有执行吗?感觉宏没有发挥作用~这方面真的比较薄弱,恳请大虾的指导
追答打开宏编辑器,选择左边的ThisWorkbook,注意一定要把代码放在这个模块,如果放在sheet模块或者公有模块里都不行的,还有添加代码后要记得保存。
热心网友
时间:2023-10-09 10:37
你需要在每一个工作表标签上点鼠标右键,然后粘贴下面代码.
工作簿中有几个工作表,就需要粘贴几次,因为每个工作表都对应一个事件.
Private Sub Worksheet_Change(ByVal Target As Range)
ActiveWorkbook.Save
End Sub
其实你的这个想法可以考虑用共享工作簿的方法来实现.
因为当两个人同时打开这个工作簿时,如果其中一个人执行保存,可能提示错误.
而共享工作簿,可显示每个人的修订结果.
热心网友
时间:2023-10-09 10:37
1、先进入到Excel宏(Ctrl+F11)
2、进去后会看到左边有:VBAProject(你当前工作表的名称),它下面有Sheet1、Sheet2、Sheet3等工作表,再下面有一个“ThisWorkBook”。
3、双击“ThisWorkBook”,在右边弹出的窗口中,将这些代码粘贴进去,就OK了。