将复选框合并到代码行而不是单元格值中

问题描述 投票:0回答:1

我目前在A17中有一个复选框,我想替换M9值0/1的功能。 我如何有效地实施这一点?

` If Target.Address = "$M$9" Then
  If Target.Value > 0 Then
               If ActiveSheet.ProtectContents Then
               ActiveSheet.Unprotect Password:="TL1234Kvalitet"
               Rows("20:22").EntireRow.Hidden = False
               ActiveSheet.Protect Password:="TL1234Kvalitet"
            Else
                Rows("20:22").EntireRow.Hidden = False
            End If
       Else
            If ActiveSheet.ProtectContents Then
               ActiveSheet.Unprotect Password:="TL1234Kvalitet"
               Rows("20:22").EntireRow.Hidden = True
               ActiveSheet.Protect Password:="TL1234Kvalitet"
            Else
                Rows("20:22").EntireRow.Hidden = True
           End If
       End If
   End If`

Sheet

我尝试过如下行:

如果 Target.Address = "复选框 8" 那么 如果 Target.Value = True 那么 等等

不太有效..我在哪里可以准确地告诉复选框需要参考什么?你会怎么做才能使选中的框显示行并取消选中隐藏它们..?

excel vba checkbox
1个回答
0
投票
如果你想查看复选框是否被选中;

Sub Test() Set myCheckBox = ActiveSheet.Shapes("Check Box 8") If myCheckBox.OLEFormat.Object.Value = 1 Then MsgBox "CheckBox is checked" Else MsgBox "CheckBox is NOT checked" End If End Sub
    
© www.soinside.com 2019 - 2024. All rights reserved.