前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >撤销VBA对工作表的操作

撤销VBA对工作表的操作

作者头像
fanjy
发布2024-04-19 14:27:53
1010
发布2024-04-19 14:27:53
举报
文章被收录于专栏:完美Excel完美Excel

excelperfect

标签:VBA

当执行VBA过程代码后,如果想反悔,像在Excel中操作一样,使用Excel的撤销功能或者按Ctrl+Z来撤销VBA代码对工作表的改变,不会起作用。

这里,在jkp-ads.com中找到了代码,可以用来撤销VBA对工作表的操作。代码中,关键是两个类模块,创建了一个通用撤消处理程序,可以将其导入到任何项目。

类模块:clsUndoObject

这个类将“保留”必须更改的对象(因此可能会改回)。此外,对对象所做的任何更改都是在这个类中完成的。最后,这个类记录更改后的属性以前的值。

类模块:clsExecAndUndo

这个类将保存clsUndoObject类的所有实例的集合(简单地说:它将保存所有已更改的对象的列表,并知道如何撤消这些更改)。这个类将确保对对象进行更改(包括更改和撤消更改)。

这里的程序可以撤消的操作通常仅限于对对象属性的更改,无法撤消插入或删除工作表、刷新查询表、更新数据透视表等操作。

有兴趣的朋友可以查看:

https://jkp-ads.com/articles/undowithvba00.asp

研阅原文并下载示例工作簿。

或者,在完美Excel微信公众号中发送消息:

撤销代码操作

获取原示例工作簿的下载链接。

或者,直接到知识星球App完美Excel社群中下载原示例工作簿。

欢迎在下面留言,完善本文内容,让更多的人学到更完美的知识。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2024-04-15,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 完美Excel 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档