引言
使用Excel设计调查问卷,经常会涉及到复选框的制作与使用。今天分享,如何一键将选中的多个单元格转为复选框。

实现思路
1.遍历选择区域的单元格,在每个单元格上增加一个复选框(CheckBoxes.Add方法),并填充至该单元格上;
2.同时,设置复选框的显示文本(Caption属性)为单元格的值,默认为选中状态(Value属性),名称(Name属性)为单元格的地址;
3.最后,清空选择区域每个单元格的内容(Range.ClearContents方法)。
VBA代码
Sub 将多个单元格转为复选框()
Dim rng As Excel.Range
For Each rng In Application.Selection
Dim cb As Excel.CheckBox
Set cb = ActiveSheet.CheckBoxes.Add(rng.Left, rng.Top, rng.Width, rng.Height)
With cb
.Caption = rng.Value
.Value = True
.Name = rng.Address
End With
rng.ClearContents
Next
End Sub