Excel利用VBA将指定的单元格定位于屏幕中央

办公教程导读

收集整理了【Excel利用VBA将指定的单元格定位于屏幕中央】办公软件教程,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含880字,纯文字阅读大概需要2分钟

办公教程内容图文

如果工作表中的单元格都具有相同的行高和列宽,我们可以用VBA的方法将给定的单元格和区域定位于屏幕中央,下面是VBA代码:

Sub CenterOnCell(OnCell As Range)
Dim VisRows As Integer
Dim VisCols As Integer
'关闭屏幕更新
Application.ScreenUpdating = False
'激活区域所在的工作簿和工作表
OnCell.Parent.Parent.Activate
OnCell.Parent.Activate
'获取活动窗口的可视行数和列数
With ActiveWindow.VisibleRange
VisRows = .Rows.Count
VisCols = .Columns.Count
End With
' 确定参考单元格并用GOTO方法将该单元格定位到屏幕左上角。
' 该参考单元格用给定的单元格的行数和列数分别减去可视行数和可视列数除以2来确定。
' 用MAX函数确保参考单元格的最小行数和列数为1。
With Application
.Goto reference:=OnCell.Parent.Cells( _
.WorksheetFunction.Max(1, OnCell.Row + _
(OnCell.Rows.Count / 2) – (VisRows / 2)), _
.WorksheetFunction.Max(1, OnCell.Column + _
(OnCell.Columns.Count / 2) – _
.WorksheetFunction.RoundDown((VisCols / 2), 0))), _
scroll:=True
End With
'选择给定的单元格
OnCell.Select
'启用屏幕更新
Application.ScreenUpdating = True
End Sub

假如给定的区域为M50:N51,可以在VBA中用下面的方法调用上述代码:

CenterOnCell Range("m50:n51")

办公教程总结

以上是为您收集整理的【Excel利用VBA将指定的单元格定位于屏幕中央】办公软件教程的全部内容,希望文章能够帮你了解办公软件教程Excel利用VBA将指定的单元格定位于屏幕中央
如果觉得办公软件教程内容还不错,欢迎将网站推荐给好友。

hmoban主题是根据ripro二开的主题,极致后台体验,无插件,集成会员系统
自学咖网 » Excel利用VBA将指定的单元格定位于屏幕中央