我录制了一个宏来冻结窗格,但它没有按预期工作。它在第2行冻结并使顶行隐藏。救命。我使用的是Excel 2007.代码如下:
'冻结痛苦 - 顶行
With ActiveWindow
.SplitColumn = 0
.SplitRow = 1
End With
ActiveWindow.FreezePanes = True
答案 0 :(得分:1)
我发现这段代码完美无缺:
Sub Freeze_Top_Panes()
Application.ScreenUpdating = False
Rows("2:2").Select
ActiveWindow.FreezePanes = True
Application.ScreenUpdating = True
End Sub
要为工作簿中的所有工作表实现此目的,请尝试以下操作:
Sub Freeze_All()
Dim Ws As Worksheet
Application.ScreenUpdating = False
For Each Ws In Application.ActiveWorkbook.Worksheets
Ws.Activate
With Application.ActiveWindow
.FreezePanes = True
End With
Next
Application.ScreenUpdating = True
End Sub
我不确定这是否只影响Excel 2007(因为我还没有在其他版本上测试过),但似乎必须关闭冻结窗格功能的屏幕更新才能使用VBA。不确定为什么会这样。