примитивное не страшно, главное - чтоб надежно (с)
Господа, не подскажите ли, как в VB/VBA получить текущее разрешение монитора?

Комментарии
30.03.2006 в 18:08

149ea694a792f3ad2caaf77077a0df58 Спорящая с богом
Screen.Height и Screen.Width
30.03.2006 в 18:14

примитивное не страшно, главное - чтоб надежно (с)
Караидель , хм... ругается. При попытке выполнить нижепредставленное выдает "object required".



Sub two()

MsgBox screen.Height & Chr(10) & screen.Width

End Sub
30.03.2006 в 18:20

149ea694a792f3ad2caaf77077a0df58 Спорящая с богом
sese

Я не уверена, что это работает в VBA. В VB6 только что проверила - работает, хотя результат выдаётся не в пикселах, а, кажется, в поинтах, но это можно пересчитать. В VB.NET точно помню, что тоже работает, но надо из класса Screen брать статический объект текущего экрана (кажется, CurrentScreen) и уже из-под него извлекать ширину и высоту.
30.03.2006 в 18:22

примитивное не страшно, главное - чтоб надежно (с)
Караидель , пасиб! Правда, я как раз пытаюсь получить разрешение из VBA. Придется пошерстить хелп. И если не рудно, просветите, чем пойнт отличается от пиксела?
30.03.2006 в 18:30

149ea694a792f3ad2caaf77077a0df58 Спорящая с богом
sese

Просто другая система обсчёта монитора. Отношение поинт/пиксел тоже должно водиться в хелпе. А с VBA точно помочь не смогу, я на нём никогда толком не писала...
30.03.2006 в 18:57

sese

Попробуй так:

Dim z

Application.DisplayFullScreen = True

z = Str(Application.Width) + " x" + Str(Application.Height)

Application.DisplayFullScreen = False

MsgBox z




У меня он, правда, все равно не во весь экран получается, но поиграться и посмотреть при каких разрешениях сколько он дает - можно...
31.03.2006 в 10:16

примитивное не страшно, главное - чтоб надежно (с)
pash_ka , :hi2: , оно действительно некие цифири выдает. Боюсь только, с моим разрешением монитора выдаваемое имеем мало общего :rotate:

thank you anyway.