【发布时间】:2019-05-08 21:59:10
【问题描述】:
我对 Excel VBA 还是很陌生,所以如果描述模糊,我提前道歉。 我有一个代码,它将“需求概览”工作表中的 W 列插入一定数量的产品名称(“产品 X”、“产品 Y”等......产品数量从 1 动态变化到 100) ,总是从单元格 W2 开始,并且总是在每个产品之间跳过一个单元格(比如产品 X 在 W2 中,产品 Y 在 W4 中等) 我想在 VBA 中编写代码,是为每个产品名称创建一个表单控制按钮,并将其标题更改为 W 列中的产品名称。 我可以编写代码来动态创建与 W 列中的产品名称一样多的表单控制按钮,但是,我正在努力为它们分配标题,因为我总是收到错误消息:“无法获取 Buttons 的属性工作表类”
分配逻辑是按钮 1 将获得位于 W2 中的产品名称,按钮 2 将获得位于 W4 中的产品名称等。
任何帮助将不胜感激! 提前致谢!
Sub AddInfo()
Dim butn As Button
Dim rng As Range
Dim trial As Range
Dim i As Integer
Sheets("Demand Overview").Select
Set rng = ActiveSheet.Range("S:S")
For Each trial In ActiveSheet.Range("W:W")
If trial.Value <> "" Then Set butn = ActiveSheet.Buttons.Add(rng.Left,
trial.Top, 150, 26)
Next trial
'the code works until this point
With ActiveSheet
For i = 1 To 100
.Buttons("Button" & i).Caption = Range("W" & 2 * i)
Next i
End With
End Sub
【问题讨论】: