我正在基于Sheet2顶部的复选框在工作簿中隐藏或取消隐藏行。启用一个框和一组行是不隐藏的,反之亦然,跨多个表。
为了加快速度,Sheet1有许多按钮用于配置工作簿,方法是在关键单元格中填充数据,并说明哪些复选框已启用,哪些不在Sheet2上。
Sheet1上典型的按钮代码是:
Sub Setup()
Worksheets("Sheet2").CheckBoxes("Check Box 101").Value = 1
Call CheckBox101_Click
这会将复选框值设置为1或true,然后运行基于复选框状态隐藏或取消隐藏行的代码。
以及复选框代码:
Sub CheckBox101_Click()
Dim ws As Worksheet: Set ws = ThisWorkbook.Sheets("Sheet2")
Worksheets("Sheet2").Range("A11:A35").EntireRow.Hidden = Not ws.CheckBoxes("Check Box 101") = 1
Worksheets("Sheet3").Range("A37").EntireRow.Hidden = Not ws.CheckBoxes("Check Box 101") = 1
手动单击复选框可以很好地处理这段代码,但是通过安装宏运行它可以很好地隐藏Sheet3上的所有内容,但由于某种原因在Sheet2上隐藏不了。
有任何建议来更新Checkbox101子代码以隐藏或取消隐藏Sheet2上的行吗?
发布于 2021-12-31 00:53:38
好吧,把我停止编辑的地方捡起来,一切都很顺利。猜猜关闭文件然后重新打开它解决了它。
其中一个奇怪的Excel行为也许..。
https://stackoverflow.com/questions/70537050
复制相似问题