VBA-使用vba隐藏预定义范围

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

我有一个相对棘手的问题,我认为这与定义变量的方式有关,因此我无法解决该问题,因此出现以下问题。感谢您抽出宝贵的时间来阅读。

我有工作表1和工作表2

在工作表1上,根据用户选择,复选框值等来创建表格。这很好。

然后,我查看工作表1中的某一行,并将其值应用=(int(not(isblank(cellreference)))),如果它具有值,则给我1;如果没有值,则给我零。

然后,我求和给我1的值。此值被添加到工作表2中预定义的范围内,该范围是工作表1中表的“结果”。它本质上是打印文档,但我不希望看到空行。

使用接收的值我应用="A"&"191"+SUM(P5:P20)&":M206",这给了我一个范围A199:M206(名为HideRowsGF的单元格。然后,我想在工作表2中使用此范围来隐藏行,因此我的代码如下,但我无法使它适用于

执行,如果,如果正确,我正在呼叫HideRows在下面隐藏行

Private Sub HideRows() ' Range 191 - 206
    Dim HideRowsSheet2 As String
    Set HideRowsSheet2 = SH1.Range("HideRowsGF").Value
    'SH2.Rows("HideRowsSheet2").EnireRow.Hidden = True
End Sub

[基本上,我正在使用公式在工作表1上获取路径,并试图使用该路径隐藏工作表2上的行,但无法使其正常工作。

请让我知道您的想法。谢谢

excel vba show-hide
1个回答
0
投票
Private Sub HideRows()

    Dim SH1 As Worksheet
    Set SH1 = Sheets("Sheet1")

    Dim SH2 As Worksheet
    Set SH2 = Sheets("Sheet2")

    Dim HideRowsSheet2 As String
    HideRowsSheet2 = SH1.Range("HideRowsGF").value  'value is "A199:M206"

    SH2.Range(HideRowsSheet2).EntireRow.Select

End Sub
© www.soinside.com 2019 - 2024. All rights reserved.