隐藏不在CSVstring中的所有列
我有一个逗号分隔的string,对应于我希望可见的列的string。 所有其他列应该隐藏。
sub showOnly() Dim displayColumns As String Dim displayRange As Range displayColumns = "B,C,G,A,C" 'convert displayColumns to displayRange cells.EntireColumn.Hidden = True displayRange.Hidden = False end sub
边缘情况:string可能有重复,可能不是连续的范围
你可以试试这个方法:
Sub showOnly() Dim displayColumns As String: displayColumns = "B,C,G,A,C" Sheet2.UsedRange.Columns.Hidden = True Dim ar, col ar = Split(displayColumns, ",") For Each col In ar Sheet2.Columns(col).Hidden = False Next End Sub
ps:没有重复或不连续或不连续列的问题。