VBA代码分享:在使用E立方Excel平台时,让各个模板都自适应屏幕

花斑panther 花斑panther 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
大家在使用Excel或Excel平台的时候,都会遇到这样的问题,程序开发完了,发现客户端的屏幕分辨率都不一样,导致显示的结果不一样,那如何更好的解决这个问题呢?只需简单的几行VBA代码就可以。

Declare Function GetSystemMetrics32 Lib "user32" _
Alias "GetSystemMetrics" (ByVal nIndex As Long) As Long
Sub auto_open()
Application.ScreenUpdating = False
Dim X As Long, Y As Long
X = GetSystemMetrics32(0) ' 宽度(像素)
Y = GetSystemMetrics32(1) ' 高度(像素)
Dim i, j, k, l
For j = 3 To 32 ’‘’‘’32为信息区域的列的最大值,需要根据实际情况修改
k = Cells(2, j).ColumnWidth
Cells(2, j).ColumnWidth = k * X / 1024 '将当前分辨率的宽度值除以1024,1024为建立模板时正好的屏幕尺寸值。
Next
For i = 5 To 37 ’‘’‘’37为信息区域的行的最大值,需要根据实际情况修改
l = Cells(i, 3).RowHeight
Cells(i, 3).RowHeight = l * Y / 768
Next
‘’‘’‘通过for循环来更改每行列的值,但这样的话,字体不会改变,效果不好也可以通过控制缩放比例的方法ActiveWindow.Zoom = 100 * X / 1024 判断当前分辨率的宽度值与1024的比例关系,放大缩小相应的比例。Application.ScreenUpdating = True
End Sub

...全文

相关推荐

评论
收藏 已收藏
分享
返回顶部
花斑panther
Office开发/ VBA 5,174 成员 17,906 内容