在VBA中添加按钮时,我遇到了障碍。
我有一个电子表格,可能会扩展行或添加行。现在,我知道如何使用宏添加按钮的唯一方法(即,当您单击此按钮时,下方会出现另外三个按钮)是坐标系
With ActiveSheet.CheckBoxes.Add(185, 464, 72, 18)
.Name = "firstcheckbox"
.Caption = "CLICK ME"
End With
但是,如果有人在点击按钮制作按钮之前在表单中添加了行,那么这些坐标就不再好了,而且三个按钮显示的高于我想要的。
我试图研究这个问题,我的大脑已经破坏了。是否有一些显而易见的方法来创建这些按钮而不是坐标,以便在上面添加多少行并不重要?
With ActiveSheet.CheckBoxes.Add.Range("C6")
.Name = "firstcheckbox"
.Caption = "CLICK ME"
End With
或类似的东西?或者我是否仅限于坐标系?
非常感谢任何帮助!
答案 0 :(得分:2)
只需从范围中获取Left
和Top
属性,然后将其传递给Checkboxes.Add
:
With ActiveSheet.CheckBoxes.Add(Range("C6").Left, Range("C6").Top, 72, 18)
.Name = "firstcheckbox"
.Caption = "CLICK ME"
End With