0

我正在寻找一个 Excel 工作表,其中包含 A 列中的项目列表,每个项目与 B 列中的命令按钮配对。理想情况下,它看起来像这样:

例子

按下按钮时,相邻列 A 中的值将被复制到不同的工作表中。我知道这可能与 CommandButton_Click() 子有关,但我将有大约 200 个按钮,据我了解,我必须为每个按钮做一个不同的子。有没有办法避免这种情况?是否有一些代码适用于所有按钮,如果按下按钮,它会复制相邻的列?我当前子的一个例子是:

Sub CommandButton_Click()
Dim rs As Integer
rs = ActiveSheet.Buttons(1).TopLeftCell.Row
Worksheets("Sheet1").Range("A" & rs).Copy _
Worksheets("Sheet2").Range("A" & rs)
End Sub

希望你们明白我在这里想要做什么。任何帮助表示赞赏!

4

1 回答 1

1

您的按钮创建代码:

Sub AddButtons()
On Error Resume Next
Dim c As Range, myRange As Range
Set myRange = Selection
For Each c In myRange.Cells
ActiveSheet.Buttons.Add(c.Left, c.Top, c.Width, c.Height).Select
With Selection
.Characters.Text = "ADD"
.Name = c.Address ' names with cell address
End With
Next
myRange.Select
End Sub

处理程序:

Sub ButtonClicked()
   Dim c as Range  
   Set c = Activesheet.Range(Application.Caller)
   c.entirerow.copy sheets("Sheet2").cells(c.row,1)       
End Sub
于 2013-09-17T23:49:33.517 回答