Excel 2010宏用于创建隐藏范围中所有空白列的按钮

时间:2014-02-27 17:07:53

标签: excel-vba range excel-2010 vba excel

我是编写宏的新手,我完全不知道如何让我的命令按钮只隐藏和取消隐藏在我的范围内空白的列。

我已经有了我的命令按钮和宏,用于隐藏和取消隐藏所有列到目前为止,这样可以完美地隐藏所有列。但我不知道如何合并参数,以便当我的用户在电子表格中输入数据时,它只会隐藏/取消隐藏空白列,而不是任何包含任何数据条目的列。

我的隐藏/取消隐藏命令按钮代码是这样输入的。在“CW”列之后不会输入任何内容。第一个数据将输入“B”栏。

Private Sub HideColumnsButton_Click()

     If HideColumnsButton.Caption = "Hide Blank Columns" Then
        Columns("B:CW").Select
        Selection.EntireColumn.Hidden = True
        HideColumnsButton.Caption = "UnHide Blank Columns"
    Else
        Columns("B:CW").Select
        Selection.EntireColumn.Hidden = False
        HideColumnsButton.Caption = "Hide Blank Columns"
    End If

End Sub

1 个答案:

答案 0 :(得分:0)

这应该有助于引导您朝着正确的方向前进。隐藏列:

Application.ScreenUpdating = False
Dim rng As Range
For Each rng In Range("A1:CW1")
    If WorksheetFunction.CountA(rng.EntireColumn) = 0 Then
        rng.EntireColumn.Hidden = True
    End If
Next rng
Application.ScreenUpdating = True