|
こうさん
色々調べていただいて、ありがとうございます!
下記の記述で、試してみます)^o^(
でも、きっと私のことですから、上手くいくか不安ですが・・・
また書き込みしま〜す!
▼こう さん:
>あゆさん,こんにちわ。
>
>マイクロソフト サポート技術情報 - 404924
>[AC95] 画面の解像度を調べる方法
>http://support.microsoft.com/default.aspx?scid=http://www.microsoft.com/japan/support/kb/articles/404/9/24.asp
>からの情報を元にちょっと改修してみました。
>
>以下のコードを「標準モジュール」に貼り付けてください。
> Dim xx, yy As Integer
> Type RECT
> x1 As Long
> y1 As Long
> x2 As Long
> y2 As Long
> End Type
>
> Declare Function GetDesktopWindow Lib "User32" () As Long
> Declare Function GetWindowRect Lib "User32" _
> (ByVal hWnd As Long, rectangle As RECT) As Long
>
> Function GetScreenResolution() 'As String
> Dim R As RECT
> Dim hWnd As Long
> Dim RetVal As Long
> hWnd = GetDesktopWindow()
> RetVal = GetWindowRect(hWnd, R)
> 'GetScreenResolution = (R.x2 - R.x1) & "x" & (R.y2 - R.y1)
> xx = R.x2 - R.x1
> yy = R.y2 - R.y1
> End Function
> '---------------------------------------------------------------
> Sub xxx()
> Call GetScreenResolution
>
> UserForm1.Height = yy * 0.75
> UserForm1.Width = xx * 0.75
> UserForm1.Show vbModeless
> ' :
> '処理
> ' :
> Application.Wait (Now + TimeValue("0:00:05"))
> Unload UserForm1
> MsgBox "処理が終了しました"
> End Sub
>
>求めた画面サイズの単位がピクセル,ユーザフォームのサイズがポイント
>なので,変換(x0.75)しています。
>
>この変換についてのネタ元↓
>http://www21.tok2.com/home/vbalab/bbs/c-board.cgi?cmd=one;no=9565;id=Excel
>Thanx!! > JuJuさん(^^)
|
|