Vba 如何撤消/取消宏通过“取消”按钮执行的所有操作

Vba 如何撤消/取消宏通过“取消”按钮执行的所有操作,vba,excel,Vba,Excel,我有一个UserForm,它有一个save和Cancel按钮。您能告诉我如何向其添加代码以撤消从宏开始执行的所有操作吗 谢谢在VBA中撤消并不是那么容易…您需要存储所有已执行的操作。您想要的不是简单的,而是绝对可以实现的。如果只是几行代码,那么它就相当简单,但对于复杂的宏操作,您必须使用undo堆栈。如果你搜索谷歌的VBA撤销堆栈,那么你会看到大量的讨论围绕它。这取决于宏-如果它只修改一个电子表格,然后考虑添加代码复制的纸张,并隐藏它之前,主宏运行。如果有“撤消”按钮,则需要删除修改的工作表并取

我有一个UserForm,它有一个save和Cancel按钮。您能告诉我如何向其添加代码以撤消从宏开始执行的所有操作吗


谢谢

在VBA中撤消并不是那么容易…您需要存储所有已执行的操作。您想要的不是简单的,而是绝对可以实现的。如果只是几行代码,那么它就相当简单,但对于复杂的宏操作,您必须使用undo堆栈。如果你搜索谷歌的VBA撤销堆栈,那么你会看到大量的讨论围绕它。这取决于宏-如果它只修改一个电子表格,然后考虑添加代码复制的纸张,并隐藏它之前,主宏运行。如果有“撤消”按钮,则需要删除修改的工作表并取消隐藏原始工作表。