0
我想要创建一个宏,当它激活时,将隐藏没有格式化为特定颜色的单元格的所有列和行。我修改了仅包含内容的列的类似子集,但这是另一个额外的步骤,我的大脑似乎无法在今天上午左右。作为参考,这是我用来隐藏那些没有内容的所有列:Excel:隐藏不包含彩色单元格的所有行和列
Sub HideCols()
Dim LC As Integer, j As Integer
Dim LR As Integer, curCnt As Integer
Dim k As Integer
Dim Data As Variant
Application.ScreenUpdating = False
LC = Cells(3, Columns.Count).End(xlToLeft).Column
For j = 3 To LC
LR = Cells(Rows.Count, j).End(xlUp).Row
curCnt = 0
Data = Range(Cells(1, 1), Cells(LR, LC))
For k = 1 To LR
If Rows(k).Hidden = False And Data(k, j) <> "" Then _
curCnt = curCnt + 1
Next k
Columns(j).Hidden = curCnt < 2
Next j
Application.ScreenUpdating = True
End Sub
如果存在具有指定颜色的单元格,是否要隐藏它所在的行或列(或两者)? – BruceWayne
我想不要隐藏它们,如果这是有道理的。我希望没有指定格式的任何内容被隐藏;但是,是的,行和列@BruceWayne –
我刚刚记录了一个按颜色过滤的宏,并得到了:ActiveSheet.ListObjects(“Table1”)。Range.AutoFilter Field:= 5,Criteria1:= RGB(255,255,0 ),Operator:= xlFilterCellColor'也许你还可以记录一个宏,并轻松获得你想要的代码? – Ralph