excel vba宏为不同工作表中的单元格分配复选框

时间:2016-12-14 11:48:26

标签: excel vba excel-vba checkbox macros

我正在尝试运行一个宏,它将工作表中的所有复选框分配给另一个工作表中的同一个单元格。 但我在vba中并不擅长(实际上从来没有这样做过,所以读得不好......)。 我确实理解了一些编程,所以这是我到目前为止所提出的,但我被卡住了:

    Sub LinkCheckBoxes()
Dim chk As CheckBox

For Each chk In ActiveSheet.CheckBoxes
    With chk
        .LinkedCell = Worksheets("data").Address
    End With

Next chk

End Sub

这不起作用,我无法找到正确的代码来使其工作。 它只需运行一次,即可设置链接,因为它们现在已取消链接。

(如果它运行它将为我处理500个复选框...)

谢谢

1 个答案:

答案 0 :(得分:0)

如果您希望将它们链接到它们所在的单元格,而是在不同的工作表上:

Sub LinkCheckBoxes()
   Dim chk As CheckBox

   For Each chk In ActiveSheet.CheckBoxes
      chk.LinkedCell = "Data!" & chk.Topleftcell.address
   Next chk

End Sub

请注意,这会使用复选框形状左上角下的单元格,该单元格可能与实际复选框显示结束的单元格不同。