冻结顶行分割屏幕
我logging了一个macros,它只是使用Excel 2007中“冻结窗格”下拉列表中内置的“Freeze Top Row”选项。
在编辑器中查看的代码如下所示:
With ActiveWindow .SplitColumn = 0 .SplitRow = 1 End With ActiveWindow.FreezePanes = True
但是,当我从编辑器运行这个代码时,它会分裂屏幕,而不是冻结窗格。 它提供了所需的效果,但在function区上select了“分割”选项。
有任何想法吗?
出于某种原因,你描述的行为是正确的。
我没有答复那台自动取款机。 但下面的工作冻结了第一排。
使用注释代码的效果相同。
Rows("2:2").Select '~~> Range("A2").Select ActiveWindow.FreezePanes = True
注意:如果ScreenUpdating为False,则在上面不起作用,然后在代码中稍后设置True。
要冻结最上面一行,请使用以下代码:
Rows("1:1").Select ActiveWindow.FreezePanes = True
要冻结更多的行而不是最上面的Rows("1:1").Select
,请更改Rows("1:1").Select
所需的行。
您需要激活要冻结的工作表。 以下代码是您可以使用的示例过程:
Public Sub fFreezeRow(wsName As String, intRow As Integer) With ThisWorkbook.Worksheets(wsName) .Activate .Rows(intRow & ":" & intRow).Select End With ActiveWindow.FreezePanes = True End Sub