效果图:
gif好像不动
使用方法:选中需要添加复选框的单元格,之后运行宏命令。
原理:使用辅助列来存储复选框的状态(true/false),同时给单元格添加条件格式,辅助列为true时,当前单元格变为绿色。
进阶:
.Width / 2
把复选框的宽度缩小了一半,不然会导致复选框挡住单元格导致无法选中单元格,可以自行修改宽度数值。
rng.Cells.Offset(0,5)
表示了辅助列偏移5列,方便把辅助列放在靠右位置进行隐藏,可以更改括号内数字进行行、列的偏移。
.Color
表示单元格变色的颜色,可以自行修改。
Application.ScreenUpdating = False
Dim rng As Range
For Each rng In Selection
With rng
With Sheet1.CheckBoxes.Add(.Left, .Top, .Width / 2, .Height) '.Select
.Value = xlOff
.Caption = ""
.LinkedCell = rng.Cells.Offset(0, 5).Address
xAddr = "=" & rng.Cells.Offset(0, 5).Address
Application.CutCopyMode = False
rng.FormatConditions.Add Type:=xlExpression, Formula1:=xAddr
rng.FormatConditions(rng.FormatConditions.Count).SetFirstPriority
With rng.FormatConditions(1).Interior
.PatternColorIndex = xlAutomatic
.Color = 5296274
.TintAndShade = 0
End With
rng.FormatConditions(1).StopIfTrue = False
End With
End With
Next
Application.ScreenUpdating = True
End Sub```