【问题标题】:Checkbox hiding rows复选框隐藏行
【发布时间】:2021-12-30 21:51:50
【问题描述】:

我正在根据 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

手动单击复选框可以正常使用此代码,但通过 Setup 宏运行它会完美地隐藏 Sheet3 上的所有内容,但由于某种原因无法隐藏在 Sheet2 上。

对更新 Checkbox101 子代码以隐藏或取消隐藏 Sheet2 上的行有任何建议吗?

【问题讨论】:

  • Sheet1 上还有一个 RESET 按钮,可将所有内容重置为零并隐藏行等。通过隐藏 Sheet2 和 Sheet3 上的行,只需将值更改为 0,然后调用,即可 100% 正常工作复选框宏。所以看来问题只是使用设置宏取消隐藏 Sheet2 上的行。

标签: excel vba checkbox row


【解决方案1】:

嗯,从我停止编辑的地方开始,一切正常。 猜猜关闭文件并重新打开它解决了它。

其中一个奇怪的 Excel 行为可能是……

【讨论】:

    猜你喜欢
    • 2013-08-10
    • 1970-01-01
    • 1970-01-01
    • 2016-05-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多