Excelmacros根据string隐藏列
我试图在Excel 2016中创build一个macros,它自动根据包含在不同单元格中的string隐藏列。 现在,范围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
任何帮助表示赞赏!
我从我的手机input这个,所以我不能testing它,但是这样做:
Columns(c.column).EntireColumn.Hidden = True
将工作。 基本上,你想要做的只是说Cell.Hide
哪个不行。 EntireColumn.Hidden
将在引用列时起作用。 所以,你应该说,隐藏这个cells' column
。
我也注意到你把它设置为False
,这意味着, 取消隐藏 。 我猜这是错误的,除非你实际上试图取消隐藏它。
完整的代码应该是:
Sub Hide_Columns_Containing_Value() Dim c As Range For Each c In Range("R1:GJU1").Cells If c.Value = "X" Then Columns(c.column).EntireColumn.Hidden = True End If Next c End Sub
让我知道,如果它的作品!