VBA Excel中的对象数组或集合

dri*_*guy 10 excel vba excel-vba

我想在excel中有一个对象数组,调用一个事件处理程序.特别是我有多个按钮,它们对不同的单元格执行相同的功能,并且为了防止重复代码,我想通过索引简单地引用这些按钮对象(就像我以前在VB 6.0中所做的那样)....通过查找哪个按钮点击了我想填充特定的单元格等所以问题是:excel VBA中的一系列按钮?我在VB.net做了一些工作,我在那里使用了集合,而且运行良好......但似乎我不能在VBA中这样做.

Dav*_*ass 1

将公共代码分离到单个方法中,并将单元格作为参数传递。为每个按钮分配它自己的事件方法,该方法依次调用具有要编辑的特定单元格作为参数的通用方法。像这样的东西:

Private Sub CommonMethod(someCell as String)
  ' Do your stuff
  Range(someCell).Value = something
End Sub
Run Code Online (Sandbox Code Playgroud)

因此每个按钮都可以分配给它自己的方法。这已经是内置的,所以不要尝试重新创建它,保持简单。

Private Sub Button1_Click()
  CommonMethod("A1");
End Sub

Private Sub Button2_Click()
  CommonMethod("A2");
End Sub
Run Code Online (Sandbox Code Playgroud)