Home |
Search |
Today's Posts |
#1
Posted to microsoft.public.excel.programming
|
|||
|
|||
determining resolution of current screen display
Hi, I am trying to determine the users screen resolution because the size of
charts etc, are going to be dependant on this. I have some code but for some reason it returns 800x600 on my monitor when it should be 1280x1024. Can anyone shed any light on this one? Here is the code: Sub screensize() Dim strSize As String With Application.DefaultWebOptions Select Case .screensize Case msoScreenSize800x600 strSize = "800x600" Case msoScreenSize1024x768 strSize = "1024x768" Case msoScreenSize1280x1024 strSize = "1280x1024" Case Else strSize = "1280x1024" End Select End With MsgBox strSize End Sub |
#2
Posted to microsoft.public.excel.programming
|
|||
|
|||
determining resolution of current screen display
Hi Graham,
Try something like '============= Option Explicit Declare Function GetSystemMetrics32 Lib "user32" _ Alias "GetSystemMetrics" _ (ByVal nIndex As Long) As Long '--------------- Function DisplayVideoResolution() As String DisplayVideoResolution = GetSystemMetrics32(0) & " x " & _ GetSystemMetrics32(1) End Function '--------------- Sub TestIt() MsgBox DisplayVideoResolution End Sub '============= --- Regards, Norman "Graham Whitehead" wrote in message ... Hi, I am trying to determine the users screen resolution because the size of charts etc, are going to be dependant on this. I have some code but for some reason it returns 800x600 on my monitor when it should be 1280x1024. Can anyone shed any light on this one? Here is the code: Sub screensize() Dim strSize As String With Application.DefaultWebOptions Select Case .screensize Case msoScreenSize800x600 strSize = "800x600" Case msoScreenSize1024x768 strSize = "1024x768" Case msoScreenSize1280x1024 strSize = "1280x1024" Case Else strSize = "1280x1024" End Select End With MsgBox strSize End Sub |
#3
Posted to microsoft.public.excel.programming
|
|||
|
|||
determining resolution of current screen display
Graham,
It looks like that property only applies to HTML output and is a "suggestion" of what you should aim for, not what the current resolution actually is. So: Private Declare Function GetSystemMetrics32 Lib "User32" _ Alias "GetSystemMetrics" (ByVal nIndex As Long) As Long Private Sub CommandButton1_Click() Dim w As Long, h As Long w = GetSystemMetrics32(0) ' width in points h = GetSystemMetrics32(1) ' height in points MsgBox Format(w, "#,##0") & " x " & Format(h, "#,##0"), _ vbInformation, "Monitor Size (width x height)" End Sub NickHK "Graham Whitehead" wrote in message ... Hi, I am trying to determine the users screen resolution because the size of charts etc, are going to be dependant on this. I have some code but for some reason it returns 800x600 on my monitor when it should be 1280x1024. Can anyone shed any light on this one? Here is the code: Sub screensize() Dim strSize As String With Application.DefaultWebOptions Select Case .screensize Case msoScreenSize800x600 strSize = "800x600" Case msoScreenSize1024x768 strSize = "1024x768" Case msoScreenSize1280x1024 strSize = "1280x1024" Case Else strSize = "1280x1024" End Select End With MsgBox strSize End Sub |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
Similar Threads | ||||
Thread | Forum | |||
Screen Resolution | Excel Programming | |||
Screen Resolution | Excel Programming | |||
Can't get screen resolution | Excel Programming | |||
Screen Resolution | Excel Programming | |||
Screen resolution | Excel Programming |