我创建了一个简单的宏来隐藏/取消隐藏Excel中的列(附在下面)。 它工作正常,但是,当在宏中的列范围内添加列时,应该隐藏的最后一列仍然是未隐藏的。 为了使自己清楚:宏中的列范围是AM:BF。当我需要在此范围内添加列时,列BF保持不被隐藏。你能帮我解决一下如何改进代码,以便初始范围的列保持隐藏状态以及添加的列吗?
With Columns("AM:BF")
If .EntireColumn.Hidden = True Then
.EntireColumn.Hidden = False
Else
.EntireColumn.Hidden = True
End If
End With
答案 0 :(得分:5)
您需要为该列添加一个放置器。您可以在AM:BF列的顶行使用命名范围(如果在其中间添加一列,则会更改)。您的代码可能看起来像
With ThisWorkbook.Sheets("MySheet").Range("NamedRange").EntireColumn
.Hidden = Not .Hidden
End With