"Pour l'écran, me semble qu'il faudra chercher du côté des API et c'est pas
gagné même si ce n'est sans doute pas impossible bien sur. Mais il y a sur ce
site certains contributeurs qui maîtrisent mieux que moi ce sujet."
à la question suivante :
"Je travaille actuellement sur un projet trés important sous excel avec des
automatisations pour que plusieurs personnes par la suite puissent s'en
servir. Je suis donc obligé de travailler à mon domicile.
Le problème j'ai au bureau un écran de 15 pouces et à mon domicile un 19
pouces.
Donc mes formulaires (zone de listes, boutons, ...) ne sont jamais où je le
souhaite.
y a t il une façon de garder le mettre nombre de colonnes à l' écran par
exemple
ou de figer la zone à l'écran"
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
isabelle
bonjour JACK,
trouver sur l'excellent site http://frederic.sigonneau.free.fr/
Attribute VB_Name = "ResolutionEcran" 'IL FAUT JUSTE ADAPTER LE ZOOM A SON ECRAN. '*****mpfe : solutions de 'luc-michel -> Sub Video (d'où est tirée la fonction Resolution Ecran) 'Robert Dezan -> Sub Fct_Zoom_AdaptationEcran (lancée par une Auto_Open)
' 32-bit API declaration Declare Function GetSystemMetrics32 Lib "User32" _ Alias "GetSystemMetrics" (ByVal nIndex As Long) As Long
' 16-bit API declaration Declare Function GetSystemMetrics16 Lib "user" _ Alias "GetSystemMetrics" (ByVal nIndex As Integer) As Integer
Public Const SM_CXSCREEN = 0 Public Const SM_CYSCREEN = 1
Function RésolutionEcran() As String 'fs à partir de la Sub Video de luc-michel (mpfe)
If Left(Application.Version, 1) = 5 Then '16-bit Excel vidWidth = GetSystemMetrics16(SM_CXSCREEN) vidHeight = GetSystemMetrics16(SM_CYSCREEN) Else '32-bit Excel vidWidth = GetSystemMetrics32(SM_CXSCREEN) vidHeight = GetSystemMetrics32(SM_CYSCREEN) End If
RésolutionEcran = vidWidth & "x" & vidHeight End Function
Sub Test() MsgBox RésolutionEcran End Sub
Sub Video() 'mpfe : luc-michel
If Left(Application.Version, 1) = 5 Then '16-bit Excel vidWidth = GetSystemMetrics16(SM_CXSCREEN) vidHeight = GetSystemMetrics16(SM_CYSCREEN) Else '32-bit Excel vidWidth = GetSystemMetrics32(SM_CXSCREEN) vidHeight = GetSystemMetrics32(SM_CYSCREEN) End If
ms = "The current video mode is: " msd = vidWidth & " X " & vidHeight Workbooks("phyopen.xls").Sheets("physika").Range("g73") = msd
If msd = "800 X 600" Then ActiveWindow.Zoom = 100 Range("A1:J25").Select Selection.RowHeight = 14.5 End If End Sub
'Sub Auto_open() 'mpfe ' ' action à exécuter à l'ouverture du programme ' Fct_Zoom_AdaptationEcran 'End Sub
Sub Fct_Zoom_AdaptationEcran() Dim video_Larg, video_Haut As Variant Application.ScreenUpdating = False video_Larg = GetSystemMetrics32(SM_CXSCREEN) video_Haut = GetSystemMetrics32(SM_CYSCREEN) ' pour info mais non utilisé ' l'image originale créée en 800 x 600 ActiveWindow.Zoom = 100 * video_Larg / 800 End Sub
isabelle
BONSOIR, "Je travaille actuellement sur un projet trés important sous excel avec des automatisations pour que plusieurs personnes par la suite puissent s'en servir. Je suis donc obligé de travailler à mon domicile. Le problème j'ai au bureau un écran de 15 pouces et à mon domicile un 19 pouces. Donc mes formulaires (zone de listes, boutons, ...) ne sont jamais où je le souhaite. y a t il une façon de garder le mettre nombre de colonnes à l' écran par exemple ou de figer la zone à l'écran"
quelqu'un a t il une réponse ?
qu esr ce qu'un API ?
merci bonsoir
bonjour JACK,
trouver sur l'excellent site http://frederic.sigonneau.free.fr/
Attribute VB_Name = "ResolutionEcran"
'IL FAUT JUSTE ADAPTER LE ZOOM A SON ECRAN.
'*****mpfe : solutions de
'luc-michel -> Sub Video (d'où est tirée la fonction Resolution Ecran)
'Robert Dezan -> Sub Fct_Zoom_AdaptationEcran (lancée par une Auto_Open)
' 32-bit API declaration
Declare Function GetSystemMetrics32 Lib "User32" _
Alias "GetSystemMetrics" (ByVal nIndex As Long) As Long
' 16-bit API declaration
Declare Function GetSystemMetrics16 Lib "user" _
Alias "GetSystemMetrics" (ByVal nIndex As Integer) As Integer
Public Const SM_CXSCREEN = 0
Public Const SM_CYSCREEN = 1
Function RésolutionEcran() As String
'fs à partir de la Sub Video de luc-michel (mpfe)
If Left(Application.Version, 1) = 5 Then
'16-bit Excel
vidWidth = GetSystemMetrics16(SM_CXSCREEN)
vidHeight = GetSystemMetrics16(SM_CYSCREEN)
Else
'32-bit Excel
vidWidth = GetSystemMetrics32(SM_CXSCREEN)
vidHeight = GetSystemMetrics32(SM_CYSCREEN)
End If
RésolutionEcran = vidWidth & "x" & vidHeight
End Function
Sub Test()
MsgBox RésolutionEcran
End Sub
Sub Video()
'mpfe : luc-michel
If Left(Application.Version, 1) = 5 Then
'16-bit Excel
vidWidth = GetSystemMetrics16(SM_CXSCREEN)
vidHeight = GetSystemMetrics16(SM_CYSCREEN)
Else
'32-bit Excel
vidWidth = GetSystemMetrics32(SM_CXSCREEN)
vidHeight = GetSystemMetrics32(SM_CYSCREEN)
End If
ms = "The current video mode is: "
msd = vidWidth & " X " & vidHeight
Workbooks("phyopen.xls").Sheets("physika").Range("g73") = msd
If msd = "800 X 600" Then
ActiveWindow.Zoom = 100
Range("A1:J25").Select
Selection.RowHeight = 14.5
End If
End Sub
'Sub Auto_open()
'mpfe
' ' action à exécuter à l'ouverture du programme
' Fct_Zoom_AdaptationEcran
'End Sub
Sub Fct_Zoom_AdaptationEcran()
Dim video_Larg, video_Haut As Variant
Application.ScreenUpdating = False
video_Larg = GetSystemMetrics32(SM_CXSCREEN)
video_Haut = GetSystemMetrics32(SM_CYSCREEN) ' pour info mais non
utilisé
' l'image originale créée en 800 x 600
ActiveWindow.Zoom = 100 * video_Larg / 800
End Sub
isabelle
BONSOIR,
"Je travaille actuellement sur un projet trés important sous excel avec des
automatisations pour que plusieurs personnes par la suite puissent s'en
servir. Je suis donc obligé de travailler à mon domicile.
Le problème j'ai au bureau un écran de 15 pouces et à mon domicile un 19
pouces.
Donc mes formulaires (zone de listes, boutons, ...) ne sont jamais où je le
souhaite.
y a t il une façon de garder le mettre nombre de colonnes à l' écran par
exemple
ou de figer la zone à l'écran"
trouver sur l'excellent site http://frederic.sigonneau.free.fr/
Attribute VB_Name = "ResolutionEcran" 'IL FAUT JUSTE ADAPTER LE ZOOM A SON ECRAN. '*****mpfe : solutions de 'luc-michel -> Sub Video (d'où est tirée la fonction Resolution Ecran) 'Robert Dezan -> Sub Fct_Zoom_AdaptationEcran (lancée par une Auto_Open)
' 32-bit API declaration Declare Function GetSystemMetrics32 Lib "User32" _ Alias "GetSystemMetrics" (ByVal nIndex As Long) As Long
' 16-bit API declaration Declare Function GetSystemMetrics16 Lib "user" _ Alias "GetSystemMetrics" (ByVal nIndex As Integer) As Integer
Public Const SM_CXSCREEN = 0 Public Const SM_CYSCREEN = 1
Function RésolutionEcran() As String 'fs à partir de la Sub Video de luc-michel (mpfe)
If Left(Application.Version, 1) = 5 Then '16-bit Excel vidWidth = GetSystemMetrics16(SM_CXSCREEN) vidHeight = GetSystemMetrics16(SM_CYSCREEN) Else '32-bit Excel vidWidth = GetSystemMetrics32(SM_CXSCREEN) vidHeight = GetSystemMetrics32(SM_CYSCREEN) End If
RésolutionEcran = vidWidth & "x" & vidHeight End Function
Sub Test() MsgBox RésolutionEcran End Sub
Sub Video() 'mpfe : luc-michel
If Left(Application.Version, 1) = 5 Then '16-bit Excel vidWidth = GetSystemMetrics16(SM_CXSCREEN) vidHeight = GetSystemMetrics16(SM_CYSCREEN) Else '32-bit Excel vidWidth = GetSystemMetrics32(SM_CXSCREEN) vidHeight = GetSystemMetrics32(SM_CYSCREEN) End If
ms = "The current video mode is: " msd = vidWidth & " X " & vidHeight Workbooks("phyopen.xls").Sheets("physika").Range("g73") = msd
If msd = "800 X 600" Then ActiveWindow.Zoom = 100 Range("A1:J25").Select Selection.RowHeight = 14.5 End If End Sub
'Sub Auto_open() 'mpfe ' ' action à exécuter à l'ouverture du programme ' Fct_Zoom_AdaptationEcran 'End Sub
Sub Fct_Zoom_AdaptationEcran() Dim video_Larg, video_Haut As Variant Application.ScreenUpdating = False video_Larg = GetSystemMetrics32(SM_CXSCREEN) video_Haut = GetSystemMetrics32(SM_CYSCREEN) ' pour info mais non utilisé ' l'image originale créée en 800 x 600 ActiveWindow.Zoom = 100 * video_Larg / 800 End Sub
isabelle
BONSOIR, "Je travaille actuellement sur un projet trés important sous excel avec des automatisations pour que plusieurs personnes par la suite puissent s'en servir. Je suis donc obligé de travailler à mon domicile. Le problème j'ai au bureau un écran de 15 pouces et à mon domicile un 19 pouces. Donc mes formulaires (zone de listes, boutons, ...) ne sont jamais où je le souhaite. y a t il une façon de garder le mettre nombre de colonnes à l' écran par exemple ou de figer la zone à l'écran"