我正在尝试在Excel 2016中创建一个宏,该宏根据不同单元格中包含的字符串自动隐藏列。现在,范围R1:GJU1是一个用IF公式填充X的公式。
这是我的代码:
Sub Hide_Columns_Containing_Value()
Dim c As Range
For Each c In Range("R1:GJU1").Cells
If c.Value = "X" Then
c.EntireColumn.Hidden = False
End If
Next c
End Sub
我收到此错误:
Run-time error '13':
Type mismatch
感谢任何帮助!
答案 0 :(得分:0)
我正在通过手机输入这个,所以我无法测试,但这样做:
Columns(c.column).EntireColumn.Hidden = True
会奏效。基本上,你要做的只是说Cell.Hide
这是行不通的。引用列时EntireColumn.Hidden
将起作用。因此,您应该说,隐藏此column
的{{1}}。
我还注意到您将其设置为cells' column
,这意味着取消隐藏。我猜这是错误的,除非你实际上试图取消隐藏它。
完整代码应为:
False
让我知道它是否有效!