选中复选框后激活单元格

时间:2017-09-27 18:28:36

标签: excel vba excel-vba

我在Excel电子表格的单元格中有一个复选框。我正在编写一个宏,使用Activecell.Offset函数将文本放在某些单元格中,如下所示:

Activecell.Offset(3,1).Value = "Needed"

但是,为了使其按照需要工作,我需要在复选框时将包含复选框的单元格设置为“活动”单元格。我该怎么做?

1 个答案:

答案 0 :(得分:0)

这适用于Form Control CheckBox对象
确保复选框的索引和ActiveSheet.CheckBoxes(1)中的索引 是一样的......

Sub Checkbox1_Click()
 Dim chkBox As CheckBox
 Set chkBox = ActiveSheet.CheckBoxes(1)
 Range(chkBox.LinkedCell).Offset(3, 1).Value="Needed"
End Sub

您还可以根据Needed中的值进行填充 - LinkedCell

如果您的复选框是ActiveX控件。您可以对其执行类似的操作方法。

已编辑以显示更多详情

Checkbox表单控件的工作流程如下: -  1.右键单击复选框 - >格式控制
enter image description here
 2.单元格链接,这通常是复选框后面的单元格,您想要锚定(您可以将字体颜色设置为白色,以便它不显示值)
enter image description here
 3.右键单击复选框 - >分配宏
enter image description here
 4.单击“新建”
enter image description here
 5.它显示为您创建以下代码段

Sub CheckBox2_Click()

End Sub

6。使用我之前向您展示的代码填写Sub。

Sub Checkbox2_Click()
 Dim chkBox As CheckBox
 Set chkBox = ActiveSheet.CheckBoxes(2)
 Range(chkBox.LinkedCell).Offset(3, 1).Value="Needed"
End Sub