如何用VBA在Excel中冻结行列且不拆分窗口
冻结首行首列且不拆分窗口的VBA写法
你不需要先设置窗口拆分,直接定位到B2单元格(首行与首列交叉后的第一个单元格),再执行冻结窗格操作即可,这样就不会产生窗口拆分的效果:
Range("B2").Select ActiveWindow.FreezePanes = True
如果想避免使用Select(更符合VBA最佳实践的写法),可以用以下代码:
With ActiveWindow ' 先取消已有的冻结和拆分状态 .FreezePanes = False .SplitColumn = 0 .SplitRow = 0 ' 设置冻结的分界位置 .SplitColumn = 1 .SplitRow = 1 .FreezePanes = True ' 关闭拆分窗口的显示 .Split = False End With
原理说明:Excel的冻结窗格功能是以选中单元格的上方、左侧区域为冻结范围。选中B2时,上方的第1行、左侧的第1列会被冻结;而通过设置Split = False,可以在冻结后隐藏拆分线,彻底消除窗口拆分的视觉效果。
内容的提问来源于stack exchange,提问作者Michael
相关产品推荐
相关产品推荐

