J'ai un userform 1 dans lesquel je peux ouvrir Userform2.
le probl=E8me est que certains sont en 1024*768 et d'autres=20
en 800*600. Bien =E9videmment, en 1024x768 c'est tr=E8s bien=20
mais ceux qui sont en 800*600 n'ont pas l'userform2 qui=20
s'ouvre au bon endroit.
j'ai pens=E9 =E0 un truc comme :=20
***si r=E9solution 1024x768 alors :
With UserForm2
.StartUpPosition =3D 0
.Left =3D Application.UsableWidth - 500
.Top =3D Application.UsableHeight - 220
End With
***si r=E9solution =3D 800*600 alors
With UserForm2
.StartUpPosition =3D 0
.Left =3D Application.UsableWidth - 700
.Top =3D Application.UsableHeight - 420
End With
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Corona
Bonjour Denis, Ce code pondu par Laurent Longre et qui te donne la résolution de ton écran, pourra certainement t'aider. Philippe ********************************************************************** Declare Function GetDeviceCaps Lib "Gdi32" (ByVal hdc As Long, _ ByVal nIndex As Long) As Long Declare Function GetDC Lib "User32" (ByVal hWnd As Long) As Long Declare Function ReleaseDC Lib "User32" (ByVal hWnd As Long, _ ByVal hdc As Long) As Long
Sub Test() Dim DC As Long DC = GetDC(0) MsgBox "Résolution : " & GetDeviceCaps(DC, 8) & " * " & GetDeviceCaps(DC, 10) & " pixels" ReleaseDC 0, DC End Sub *****************************************************************
"DENIS" a écrit dans le message de news: 2d3a01c5047a$9a78b3d0$ Cher tous,
J'ai un userform 1 dans lesquel je peux ouvrir Userform2. le problème est que certains sont en 1024*768 et d'autres en 800*600. Bien évidemment, en 1024x768 c'est très bien mais ceux qui sont en 800*600 n'ont pas l'userform2 qui s'ouvre au bon endroit.
j'ai pensé à un truc comme : ***si résolution 1024x768 alors : With UserForm2 .StartUpPosition = 0 .Left = Application.UsableWidth - 500 .Top = Application.UsableHeight - 220 End With ***si résolution = 800*600 alors With UserForm2 .StartUpPosition = 0 .Left = Application.UsableWidth - 700 .Top = Application.UsableHeight - 420 End With
Comment peut-on traduire tout cela ?
Merci Denis
Bonjour Denis,
Ce code pondu par Laurent Longre et qui te donne la résolution de ton
écran, pourra certainement t'aider.
Philippe
**********************************************************************
Declare Function GetDeviceCaps Lib "Gdi32" (ByVal hdc As Long, _
ByVal nIndex As Long) As Long
Declare Function GetDC Lib "User32" (ByVal hWnd As Long) As Long
Declare Function ReleaseDC Lib "User32" (ByVal hWnd As Long, _
ByVal hdc As Long) As Long
Sub Test()
Dim DC As Long
DC = GetDC(0)
MsgBox "Résolution : " & GetDeviceCaps(DC, 8) & " * " &
GetDeviceCaps(DC, 10) & " pixels"
ReleaseDC 0, DC
End Sub
*****************************************************************
"DENIS" <anonymous@discussions.microsoft.com> a écrit dans le message de
news: 2d3a01c5047a$9a78b3d0$a501280a@phx.gbl...
Cher tous,
J'ai un userform 1 dans lesquel je peux ouvrir Userform2.
le problème est que certains sont en 1024*768 et d'autres
en 800*600. Bien évidemment, en 1024x768 c'est très bien
mais ceux qui sont en 800*600 n'ont pas l'userform2 qui
s'ouvre au bon endroit.
j'ai pensé à un truc comme :
***si résolution 1024x768 alors :
With UserForm2
.StartUpPosition = 0
.Left = Application.UsableWidth - 500
.Top = Application.UsableHeight - 220
End With
***si résolution = 800*600 alors
With UserForm2
.StartUpPosition = 0
.Left = Application.UsableWidth - 700
.Top = Application.UsableHeight - 420
End With
Bonjour Denis, Ce code pondu par Laurent Longre et qui te donne la résolution de ton écran, pourra certainement t'aider. Philippe ********************************************************************** Declare Function GetDeviceCaps Lib "Gdi32" (ByVal hdc As Long, _ ByVal nIndex As Long) As Long Declare Function GetDC Lib "User32" (ByVal hWnd As Long) As Long Declare Function ReleaseDC Lib "User32" (ByVal hWnd As Long, _ ByVal hdc As Long) As Long
Sub Test() Dim DC As Long DC = GetDC(0) MsgBox "Résolution : " & GetDeviceCaps(DC, 8) & " * " & GetDeviceCaps(DC, 10) & " pixels" ReleaseDC 0, DC End Sub *****************************************************************
"DENIS" a écrit dans le message de news: 2d3a01c5047a$9a78b3d0$ Cher tous,
J'ai un userform 1 dans lesquel je peux ouvrir Userform2. le problème est que certains sont en 1024*768 et d'autres en 800*600. Bien évidemment, en 1024x768 c'est très bien mais ceux qui sont en 800*600 n'ont pas l'userform2 qui s'ouvre au bon endroit.
j'ai pensé à un truc comme : ***si résolution 1024x768 alors : With UserForm2 .StartUpPosition = 0 .Left = Application.UsableWidth - 500 .Top = Application.UsableHeight - 220 End With ***si résolution = 800*600 alors With UserForm2 .StartUpPosition = 0 .Left = Application.UsableWidth - 700 .Top = Application.UsableHeight - 420 End With
Comment peut-on traduire tout cela ?
Merci Denis
Michel Pierron
Bonsoir DENIS; Private Declare Function GetSystemMetrics& Lib "user32" (ByVal nIndex&)
With UserForm2 .StartUpPosition = 0 Select Case GetSystemMetrics(0) Case 1024 .Left = Application.UsableWidth - 500 .Top = Application.UsableHeight - 220 Case 800 .Left = Application.UsableWidth - 700 .Top = Application.UsableHeight - 42 End Select End With
MP
"DENIS" a écrit dans le message de news:2d3a01c5047a$9a78b3d0$ Cher tous,
J'ai un userform 1 dans lesquel je peux ouvrir Userform2. le problème est que certains sont en 1024*768 et d'autres en 800*600. Bien évidemment, en 1024x768 c'est très bien mais ceux qui sont en 800*600 n'ont pas l'userform2 qui s'ouvre au bon endroit.
j'ai pensé à un truc comme : ***si résolution 1024x768 alors : With UserForm2 .StartUpPosition = 0 .Left = Application.UsableWidth - 500 .Top = Application.UsableHeight - 220 End With ***si résolution = 800*600 alors With UserForm2 .StartUpPosition = 0 .Left = Application.UsableWidth - 700 .Top = Application.UsableHeight - 420 End With
Comment peut-on traduire tout cela ?
Merci Denis
Bonsoir DENIS;
Private Declare Function GetSystemMetrics& Lib "user32" (ByVal nIndex&)
With UserForm2
.StartUpPosition = 0
Select Case GetSystemMetrics(0)
Case 1024
.Left = Application.UsableWidth - 500
.Top = Application.UsableHeight - 220
Case 800
.Left = Application.UsableWidth - 700
.Top = Application.UsableHeight - 42
End Select
End With
MP
"DENIS" <anonymous@discussions.microsoft.com> a écrit dans le message de
news:2d3a01c5047a$9a78b3d0$a501280a@phx.gbl...
Cher tous,
J'ai un userform 1 dans lesquel je peux ouvrir Userform2.
le problème est que certains sont en 1024*768 et d'autres
en 800*600. Bien évidemment, en 1024x768 c'est très bien
mais ceux qui sont en 800*600 n'ont pas l'userform2 qui
s'ouvre au bon endroit.
j'ai pensé à un truc comme :
***si résolution 1024x768 alors :
With UserForm2
.StartUpPosition = 0
.Left = Application.UsableWidth - 500
.Top = Application.UsableHeight - 220
End With
***si résolution = 800*600 alors
With UserForm2
.StartUpPosition = 0
.Left = Application.UsableWidth - 700
.Top = Application.UsableHeight - 420
End With
Bonsoir DENIS; Private Declare Function GetSystemMetrics& Lib "user32" (ByVal nIndex&)
With UserForm2 .StartUpPosition = 0 Select Case GetSystemMetrics(0) Case 1024 .Left = Application.UsableWidth - 500 .Top = Application.UsableHeight - 220 Case 800 .Left = Application.UsableWidth - 700 .Top = Application.UsableHeight - 42 End Select End With
MP
"DENIS" a écrit dans le message de news:2d3a01c5047a$9a78b3d0$ Cher tous,
J'ai un userform 1 dans lesquel je peux ouvrir Userform2. le problème est que certains sont en 1024*768 et d'autres en 800*600. Bien évidemment, en 1024x768 c'est très bien mais ceux qui sont en 800*600 n'ont pas l'userform2 qui s'ouvre au bon endroit.
j'ai pensé à un truc comme : ***si résolution 1024x768 alors : With UserForm2 .StartUpPosition = 0 .Left = Application.UsableWidth - 500 .Top = Application.UsableHeight - 220 End With ***si résolution = 800*600 alors With UserForm2 .StartUpPosition = 0 .Left = Application.UsableWidth - 700 .Top = Application.UsableHeight - 420 End With