如何在每个行的Excel电子表格中向单元格添加表单控件

时间:2010-03-08 00:38:28

标签: c# excel

如何在Excel中添加表单控件到单元格,我知道我可以绘制它,但我需要使它成为每一行的成员,并且它的值附加到该单元格/行。

1 个答案:

答案 0 :(得分:0)

有几种方法可以做到这一点,但最简单的,假设Excel 2007是:

Set cb = MyWorkSheet.CheckBoxes.Add(left, top, width, height)
cb.LinkedCell = "$A$1"
cb.Display3DShading = True

你不得不尝试一些放置,因为我认为没有直接的方法将控件与特定的细胞对齐。另一种方法是使用工作表的Shapes集合:

Set shape = MyWorkSheet.Shapes.AddFormControl(xlCheckBox, l, t, w, h)

但是,请记住,上述方法返回Shape对象而不是CheckBox对象,因此您无法直接操作其属性。有类似的方法,比如使用OLEObjects集合,但这只会增加更多的痛苦。