1

我已经看到很多关于让几个命令按钮执行类似操作的信息,但我所看到的一切都是关于用户表单的。

我想让一组命令按钮将数据从一个单元格移动到另一个单元格。我只是不想将相同的代码复制并粘贴到每个命令按钮中。

这是我想要对每个命令按钮执行的部分操作:

Range(CommandButton1.TopLeftCell.Address).Select
Selection.Copy
If Application.WorksheetFunction.IsText(Range("R5")) And Range(CommandButton1.TopLeftCell.Address).Value <> Range("R5") Then
    Range("R6").Select
    ActiveSheet.Paste
    Range(CommandButton1.TopLeftCell.Address).Select
Else
    Range("R5").Select
    ActiveSheet.Paste
    Range(CommandButton1.TopLeftCell.Address).Select
End If
Application.CutCopyMode = False

我尝试使用类模块,但似乎根本无法让它发挥作用。我希望能够将该代码放入一个类或某个类中以在某个组中的所有命令按钮上运行。然后,我希望在同一张工作表上使用不同的命令按钮组来执行不同的代码。

我应该走什么路线?

4

1 回答 1

1

当您创建第一个按钮并将其放入 Excel 工作表时,您会看到宏屏幕,当单击新建时,它将打开宏屏幕并创建Sub Button1_Click()事件或您命名宏的任何内容。创建的所有其他按钮也将在模块中创建它们的事件。

在此模块中,您可以创建一个包含共享代码的新子:

Sub SharedCode()
End Sub

然后,您可以在为您的按钮创建的每个事件中调用您的共享代码:

Sub Button1_Click()
    SharedCode
End Sub
于 2013-08-16T16:00:17.897 回答