|
本帖最后由 ysjjess 于 2024-8-16 09:56 编辑
请把遍历整个工作表的代码更改为A1:L3000,这样速度快很多,整个工作表太慢了,谢谢!
已经实现,代码如下:Sub HideUnselectedRange()
Dim SelectedRange As Range
Dim WholeRange As Range
Dim Cell As Range
' 获取用户选择的区域
Set SelectedRange = Selection
' 假设指定的区域为 A1:Z1000
Set WholeRange = Range("$A$1:$L$1000")
For Each Cell In WholeRange
If Not Intersect(Cell, SelectedRange) Is Nothing Then
' 保留选中区域的格式不变
Else
' 将未选择区域的字体颜色设置为白色,边框设置为无边框
Cell.Font.Color = RGB(255, 255, 255)
Cell.Borders.LineStyle = xlNone
End If
Next Cell
' 打印当前工作表
ActiveSheet.PrintOut
End Sub
|
|