0

我已经清除了所有按钮,但是我在为 VBA 中的清除所有按钮撤消清除所有按钮代码时遇到问题

private sub commandbutton1_click
Sheets ("examplesheet").range ("a1:a3").value = ""

在我不小心清除了整个表单的情况下,有人可以帮我为此示例制作一个撤消按钮吗?

4

1 回答 1

1

当您单击撤消按钮时,您可以创建一个执行某些操作的函数。

这是一个示例,它使用调用的工作表Undo来存储撤消所需的信息。可以隐藏床单以使其更清洁。

Sub Test()
  ClearCell Cells(1, 1)
End Sub

Sub ClearCell(R As Range)
  Sheets("Undo").Range("A1") = R.Worksheet.Name
  Sheets("Undo").Range("A2") = R.Address
  Sheets("Undo").Range("A3") = R.Text
  R.Clear
  Application.OnUndo "Undo button text", "MyUndo"
End Sub

Sub MyUndo()
  Sheets(Sheets("Undo").Range("A1").Text).Range(Sheets("Undo").Range("A2").Text) = Sheets("Undo").Range("A3").Text
End Sub

您可以通过管理一系列操作来优化它,如 chuff 评论建议的文档中所述

于 2013-07-21T18:41:39.253 回答