使用Excel设计调查问卷,经常会涉及到复选框的制作与使用。今天分享,如何利用VBA将选中的多个单元格转为复选框。
单元格转复选框GIF
实现思路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