首页 > 解决方案 > VBA - 如何取消隐藏列?

问题描述

更新:所以我发现了这个问题。当用户在工作表上选择一个链接时,宏就会运行。我将链接设置为取消隐藏行宏。

我在使用 VBA 取消隐藏列时遇到问题。我一直在使用此链接作为尝试解决我的问题的基础,但它对我不起作用。

在 Excel 中隐藏/取消隐藏列的宏

这是我现在的代码:

Public Sub a_view_calc_columns()
     Dim calc as Worksheet
     Dim rng as Range

     Set calc = ThisWorkbook.Sheets("Calc")
     Set rng = calc.Range("A:T")

     rng.EntireColumn.Hidden = False

我也试过:

rng.Column.EntireColumn.Hidden = False

With Columns("A:T")
     If .EntireColumn.Hidden = True Then
          .EntireColumn.Hidden = False
     End If
End With

我正在使用 Excel 2016。

我应该注意到 A:T 列中会有数据,并且我手动隐藏 G 和 H 列来测试代码。

标签: excelvba

解决方案


这是一个简单的例子

Option Explicit

Sub test()
    With ActiveSheet
        If .Columns("G:H").EntireColumn.Hidden Then
            MsgBox "Hidden"
            .Columns("G:H").EntireColumn.Hidden = False
        Else
           MsgBox "Those columns aren't hidden"
        End If
    End With
End Sub

推荐阅读