Code VBA lấy độ phân giải của màn hình

Liên hệ QC

moihocvba

Thành viên thường trực
Tham gia
16/8/20
Bài viết
211
Được thích
50
Xin chào cả nhà GPE.
Cho em hỏi VBA có code nào có thể lấy độ phân giải của màn hình không ạ, ví dụ độ phân giải 1920x1080 hoặc 1366x768,...
Mục đích là để khi mở file excel thì phát hiện độ phân giải của màn hình mà điều chỉnh độ thu phóng của các sheet tự động để vừa khít với màn hình ạ.
Vì em dùng laptop với máy tính màn, 2 màn hình lớn nhỏ khác nhau, đồng bộ bằng google drive, mỗi lần mở lên phải chính thu phóng các sheet trong file excel rất vất vả ạ!
Em xin cám ơn !
 
Cho em hỏi VBA có code nào có thể lấy độ phân giải của màn hình không ạ, ví dụ độ phân giải 1920x1080 hoặc 1366x768,...

Code này:

Mã:
Option Explicit

#If VBA7 Then
    Declare PtrSafe Function GetSystemMetrics32 Lib "User32" _
    Alias "GetSystemMetrics" (ByVal nIndex As Long) As Long
#Else
    Declare Function GetSystemMetrics32 Lib "User32" _
    Alias "GetSystemMetrics" (ByVal nIndex As Long) As Long
#End If
Function getScreenRes() As String
    Dim w As Long, h As Long
    w = GetSystemMetrics32(0) 'in points
    h = GetSystemMetrics32(1)
    getScreenRes = w & " x " & h
End Function
 
Upvote 0
Code lượm lặt trên google:
Mã:
#If VBA7 Then
    Declare PtrSafe Function GetSystemMetrics Lib "User32" Alias "GetSystemMetrics" (ByVal nIndex As Long) As Long
#Else
    Declare Function GetSystemMetrics Lib "User32" Alias "GetSystemMetrics" (ByVal nIndex As Long) As Long
#End If

Sub Screenresolution()
Dim x&, y&
x = GetSystemMetrics(0)
y = GetSystemMetrics(1)
MsgBox "Your current screen resolution is " & x & "x" & y, vbOKOnly, "Screen resolution Info."
End Sub
 
Upvote 0
Code này:

Mã:
Option Explicit

#If VBA7 Then
    Declare PtrSafe Function GetSystemMetrics32 Lib "User32" _
    Alias "GetSystemMetrics" (ByVal nIndex As Long) As Long
#Else
    Declare Function GetSystemMetrics32 Lib "User32" _
    Alias "GetSystemMetrics" (ByVal nIndex As Long) As Long
#End If
Function getScreenRes() As String
    Dim w As Long, h As Long
    w = GetSystemMetrics32(0) 'in points
    h = GetSystemMetrics32(1)
    getScreenRes = w & " x " & h
End Function
Dạ code này đúng rồi ạ, em cám ơn nhiều ạ!

Cho em hỏi có cách nào lấy thông số Scale luôn không ạ, vì mức độ thu phóng của sheet Excel cũng bị ảnh hưởng bởi thông số này ạ! Ví dụ 100%, 150%, 200%.

1650337648461.png
 
Upvote 0
Upvote 0
Web KT

Bài viết mới nhất

Back
Top Bottom