Bonjour, mon problème d'aujourd'hui est le suivant:
j'ai crée un outil Excel sur un ordinateur ayant un écran de 14 pouces donc
par conséquent lorsque je l'ouvre sur un pc ayant un écran plus grand tout se
retrouve concentrer en haut à gauche de la feuille. Ainsi, comme mon outil
doit pouvoir etre facilement utilisé sur tout type de pc, j'ai essayé de
créer des macros avec 2 boutons (small screen size et large screen size) qui
jouent sur le zoom de toutes feuilles de mon classeur afin de les adapter
mais je n'y arrive pas :(
Je voudrais donc savoir si quelqu'un connait une astuce pour adapter
automatiquement la feuille à la taille de l'écran ou si quelqu'un à une autre
idée tout simplement!
Merci!
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
Patrick Fredin
Bonjour,
D'abord, il faut déterminer quel est la zone qui doit être affichée. Si c'est la même pour toutes les feuilles, tu peux utiliser l'événement "Workbook_SheetActivate". Sinon il faut utiliser pour chaque feuille l'événement "Worksheet_Activate". Éventuellement tu peux donner des noms aux zones de chaque feuille et utiliser l'événement au niveau du Workbook.
Ensuite, tu adaptes ce code :
'Pour que l'utilisateur ne voit rien : Application.ScreenUpdating = False 'C'est la zone, "shInfo" étant la feuille où le zoom est appliqué. Il suffit d'adapter shInfo.Range("B2:O35").Select 'Définit le zoom nécessaire automatiquement ActiveWindow.Zoom = True 'Permet de définir un ajustement du zoom (ici, si c'est au dessus de 95%, on laisse 100%) If Abs(ActiveWindow.Zoom - 100) <= 5 Then ActiveWindow.Zoom = 100 Application.GoTo Reference:="R1C1"
Ce code prend un rectangle comme base parce que je voulais garder à l'écran des infos en hauteur et en largeur. Si tu veux juste adapter la largeur, tu limites la zone à la 1e ligne.
J'espère que cela te permettra de faire ce que tu veux. Tu peux revenir si tu rencontres encore des problèmes.
-- Patrick
"Monsieur-Patate" wrote in message news:
Bonjour, mon problème d'aujourd'hui est le suivant: j'ai crée un outil Excel sur un ordinateur ayant un écran de 14 pouces donc par conséquent lorsque je l'ouvre sur un pc ayant un écran plus grand tout se retrouve concentrer en haut à gauche de la feuille. Ainsi, comme mon outil doit pouvoir etre facilement utilisé sur tout type de pc, j'ai essayé de créer des macros avec 2 boutons (small screen size et large screen size) qui jouent sur le zoom de toutes feuilles de mon classeur afin de les adapter mais je n'y arrive pas :( Je voudrais donc savoir si quelqu'un connait une astuce pour adapter automatiquement la feuille à la taille de l'écran ou si quelqu'un à une autre idée tout simplement! Merci!
Bonjour,
D'abord, il faut déterminer quel est la zone qui doit être affichée. Si
c'est la même pour toutes les feuilles, tu peux utiliser l'événement
"Workbook_SheetActivate". Sinon il faut utiliser pour chaque feuille
l'événement "Worksheet_Activate". Éventuellement tu peux donner des noms aux
zones de chaque feuille et utiliser l'événement au niveau du Workbook.
Ensuite, tu adaptes ce code :
'Pour que l'utilisateur ne voit rien :
Application.ScreenUpdating = False
'C'est la zone, "shInfo" étant la feuille où le zoom est appliqué. Il suffit
d'adapter
shInfo.Range("B2:O35").Select
'Définit le zoom nécessaire automatiquement
ActiveWindow.Zoom = True
'Permet de définir un ajustement du zoom (ici, si c'est au dessus de 95%, on
laisse 100%)
If Abs(ActiveWindow.Zoom - 100) <= 5 Then ActiveWindow.Zoom = 100
Application.GoTo Reference:="R1C1"
Ce code prend un rectangle comme base parce que je voulais garder à l'écran
des infos en hauteur et en largeur. Si tu veux juste adapter la largeur, tu
limites la zone à la 1e ligne.
J'espère que cela te permettra de faire ce que tu veux. Tu peux revenir si
tu rencontres encore des problèmes.
--
Patrick
"Monsieur-Patate" <Monsieur-Patate@discussions.microsoft.com> wrote in
message news:53315E0D-E59E-4A44-8D50-8B92AA987D45@microsoft.com...
Bonjour, mon problème d'aujourd'hui est le suivant:
j'ai crée un outil Excel sur un ordinateur ayant un écran de 14 pouces
donc
par conséquent lorsque je l'ouvre sur un pc ayant un écran plus grand tout
se
retrouve concentrer en haut à gauche de la feuille. Ainsi, comme mon outil
doit pouvoir etre facilement utilisé sur tout type de pc, j'ai essayé de
créer des macros avec 2 boutons (small screen size et large screen size)
qui
jouent sur le zoom de toutes feuilles de mon classeur afin de les adapter
mais je n'y arrive pas :(
Je voudrais donc savoir si quelqu'un connait une astuce pour adapter
automatiquement la feuille à la taille de l'écran ou si quelqu'un à une
autre
idée tout simplement!
Merci!
D'abord, il faut déterminer quel est la zone qui doit être affichée. Si c'est la même pour toutes les feuilles, tu peux utiliser l'événement "Workbook_SheetActivate". Sinon il faut utiliser pour chaque feuille l'événement "Worksheet_Activate". Éventuellement tu peux donner des noms aux zones de chaque feuille et utiliser l'événement au niveau du Workbook.
Ensuite, tu adaptes ce code :
'Pour que l'utilisateur ne voit rien : Application.ScreenUpdating = False 'C'est la zone, "shInfo" étant la feuille où le zoom est appliqué. Il suffit d'adapter shInfo.Range("B2:O35").Select 'Définit le zoom nécessaire automatiquement ActiveWindow.Zoom = True 'Permet de définir un ajustement du zoom (ici, si c'est au dessus de 95%, on laisse 100%) If Abs(ActiveWindow.Zoom - 100) <= 5 Then ActiveWindow.Zoom = 100 Application.GoTo Reference:="R1C1"
Ce code prend un rectangle comme base parce que je voulais garder à l'écran des infos en hauteur et en largeur. Si tu veux juste adapter la largeur, tu limites la zone à la 1e ligne.
J'espère que cela te permettra de faire ce que tu veux. Tu peux revenir si tu rencontres encore des problèmes.
-- Patrick
"Monsieur-Patate" wrote in message news:
Bonjour, mon problème d'aujourd'hui est le suivant: j'ai crée un outil Excel sur un ordinateur ayant un écran de 14 pouces donc par conséquent lorsque je l'ouvre sur un pc ayant un écran plus grand tout se retrouve concentrer en haut à gauche de la feuille. Ainsi, comme mon outil doit pouvoir etre facilement utilisé sur tout type de pc, j'ai essayé de créer des macros avec 2 boutons (small screen size et large screen size) qui jouent sur le zoom de toutes feuilles de mon classeur afin de les adapter mais je n'y arrive pas :( Je voudrais donc savoir si quelqu'un connait une astuce pour adapter automatiquement la feuille à la taille de l'écran ou si quelqu'un à une autre idée tout simplement! Merci!
Monsieur-Patate
Bonjour Patrick, tout d'abord merci pour ton aide mais j'ai encore quelques petits problèmes, on va dire que je ne suis pas un as du VBA.
En fait je t explique j'ai une page d acceuil ou j'ai fait des boutons avec des macros pour activer une feuille précise quand on appuie sur tel bouton. En voilà un exemple pour aller sur la feuille nommée V-type:
Private Sub CommandButton2_Click() Worksheets("V-type").Activate End Sub
Suivant tes conseils j'ai essayé de rajouter ceci : Private Sub CommandButton1_Click() Worksheets("V-type").Activate V-type.Range("B2:T44").Select ActiveWindow.Zoom = True End Sub
Si j'ai bien compris ca devrait selectionner la zone entre les cellules B2 et T44 et ensuite appliquer un zoom auto ce qui serait l idéal mais ca ne fonctionne pas :( Est ce à cause du nom de ma feuille?? J'ai essayé comme ca "V-type" mais le resultat est le meme. J'espere que tu auras la solution. Merci :)
Bonjour Patrick,
tout d'abord merci pour ton aide mais j'ai encore quelques petits problèmes,
on va dire que je ne suis pas un as du VBA.
En fait je t explique j'ai une page d acceuil ou j'ai fait des boutons avec
des macros pour activer une feuille précise quand on appuie sur tel bouton.
En voilà un exemple pour aller sur la feuille nommée V-type:
Private Sub CommandButton2_Click()
Worksheets("V-type").Activate
End Sub
Suivant tes conseils j'ai essayé de rajouter ceci :
Private Sub CommandButton1_Click()
Worksheets("V-type").Activate
V-type.Range("B2:T44").Select
ActiveWindow.Zoom = True
End Sub
Si j'ai bien compris ca devrait selectionner la zone entre les cellules B2
et T44 et ensuite appliquer un zoom auto ce qui serait l idéal mais ca ne
fonctionne pas :(
Est ce à cause du nom de ma feuille?? J'ai essayé comme ca "V-type" mais le
resultat est le meme.
J'espere que tu auras la solution.
Merci :)
Bonjour Patrick, tout d'abord merci pour ton aide mais j'ai encore quelques petits problèmes, on va dire que je ne suis pas un as du VBA.
En fait je t explique j'ai une page d acceuil ou j'ai fait des boutons avec des macros pour activer une feuille précise quand on appuie sur tel bouton. En voilà un exemple pour aller sur la feuille nommée V-type:
Private Sub CommandButton2_Click() Worksheets("V-type").Activate End Sub
Suivant tes conseils j'ai essayé de rajouter ceci : Private Sub CommandButton1_Click() Worksheets("V-type").Activate V-type.Range("B2:T44").Select ActiveWindow.Zoom = True End Sub
Si j'ai bien compris ca devrait selectionner la zone entre les cellules B2 et T44 et ensuite appliquer un zoom auto ce qui serait l idéal mais ca ne fonctionne pas :( Est ce à cause du nom de ma feuille?? J'ai essayé comme ca "V-type" mais le resultat est le meme. J'espere que tu auras la solution. Merci :)
PMO
Bonjour,
Essayez avec cette modification
Private Sub CommandButton1_Click() Worksheets("V-type").Activate Worksheets("V-type").Range("B2:T44").Select ActiveWindow.Zoom = True End Sub
Cordialement.
PMO Patrick Morange
Bonjour Patrick, tout d'abord merci pour ton aide mais j'ai encore quelques petits problèmes, on va dire que je ne suis pas un as du VBA.
En fait je t explique j'ai une page d acceuil ou j'ai fait des boutons avec des macros pour activer une feuille précise quand on appuie sur tel bouton. En voilà un exemple pour aller sur la feuille nommée V-type:
Private Sub CommandButton2_Click() Worksheets("V-type").Activate End Sub
Suivant tes conseils j'ai essayé de rajouter ceci : Private Sub CommandButton1_Click() Worksheets("V-type").Activate V-type.Range("B2:T44").Select ActiveWindow.Zoom = True End Sub
Si j'ai bien compris ca devrait selectionner la zone entre les cellules B2 et T44 et ensuite appliquer un zoom auto ce qui serait l idéal mais ca ne fonctionne pas :( Est ce à cause du nom de ma feuille?? J'ai essayé comme ca "V-type" mais le resultat est le meme. J'espere que tu auras la solution. Merci :)
Bonjour,
Essayez avec cette modification
Private Sub CommandButton1_Click()
Worksheets("V-type").Activate
Worksheets("V-type").Range("B2:T44").Select
ActiveWindow.Zoom = True
End Sub
Cordialement.
PMO
Patrick Morange
Bonjour Patrick,
tout d'abord merci pour ton aide mais j'ai encore quelques petits problèmes,
on va dire que je ne suis pas un as du VBA.
En fait je t explique j'ai une page d acceuil ou j'ai fait des boutons avec
des macros pour activer une feuille précise quand on appuie sur tel bouton.
En voilà un exemple pour aller sur la feuille nommée V-type:
Private Sub CommandButton2_Click()
Worksheets("V-type").Activate
End Sub
Suivant tes conseils j'ai essayé de rajouter ceci :
Private Sub CommandButton1_Click()
Worksheets("V-type").Activate
V-type.Range("B2:T44").Select
ActiveWindow.Zoom = True
End Sub
Si j'ai bien compris ca devrait selectionner la zone entre les cellules B2
et T44 et ensuite appliquer un zoom auto ce qui serait l idéal mais ca ne
fonctionne pas :(
Est ce à cause du nom de ma feuille?? J'ai essayé comme ca "V-type" mais le
resultat est le meme.
J'espere que tu auras la solution.
Merci :)
Private Sub CommandButton1_Click() Worksheets("V-type").Activate Worksheets("V-type").Range("B2:T44").Select ActiveWindow.Zoom = True End Sub
Cordialement.
PMO Patrick Morange
Bonjour Patrick, tout d'abord merci pour ton aide mais j'ai encore quelques petits problèmes, on va dire que je ne suis pas un as du VBA.
En fait je t explique j'ai une page d acceuil ou j'ai fait des boutons avec des macros pour activer une feuille précise quand on appuie sur tel bouton. En voilà un exemple pour aller sur la feuille nommée V-type:
Private Sub CommandButton2_Click() Worksheets("V-type").Activate End Sub
Suivant tes conseils j'ai essayé de rajouter ceci : Private Sub CommandButton1_Click() Worksheets("V-type").Activate V-type.Range("B2:T44").Select ActiveWindow.Zoom = True End Sub
Si j'ai bien compris ca devrait selectionner la zone entre les cellules B2 et T44 et ensuite appliquer un zoom auto ce qui serait l idéal mais ca ne fonctionne pas :( Est ce à cause du nom de ma feuille?? J'ai essayé comme ca "V-type" mais le resultat est le meme. J'espere que tu auras la solution. Merci :)
Monsieur-Patate
C'est parfait, exactement ce qu'il me fallait merci à vous deux!!
Bonjour,
Essayez avec cette modification
Private Sub CommandButton1_Click() Worksheets("V-type").Activate Worksheets("V-type").Range("B2:T44").Select ActiveWindow.Zoom = True End Sub
Cordialement.
PMO Patrick Morange
Bonjour Patrick, tout d'abord merci pour ton aide mais j'ai encore quelques petits problèmes, on va dire que je ne suis pas un as du VBA.
En fait je t explique j'ai une page d acceuil ou j'ai fait des boutons avec des macros pour activer une feuille précise quand on appuie sur tel bouton. En voilà un exemple pour aller sur la feuille nommée V-type:
Private Sub CommandButton2_Click() Worksheets("V-type").Activate End Sub
Suivant tes conseils j'ai essayé de rajouter ceci : Private Sub CommandButton1_Click() Worksheets("V-type").Activate V-type.Range("B2:T44").Select ActiveWindow.Zoom = True End Sub
Si j'ai bien compris ca devrait selectionner la zone entre les cellules B2 et T44 et ensuite appliquer un zoom auto ce qui serait l idéal mais ca ne fonctionne pas :( Est ce à cause du nom de ma feuille?? J'ai essayé comme ca "V-type" mais le resultat est le meme. J'espere que tu auras la solution. Merci :)
C'est parfait, exactement ce qu'il me fallait merci à vous deux!!
Bonjour,
Essayez avec cette modification
Private Sub CommandButton1_Click()
Worksheets("V-type").Activate
Worksheets("V-type").Range("B2:T44").Select
ActiveWindow.Zoom = True
End Sub
Cordialement.
PMO
Patrick Morange
Bonjour Patrick,
tout d'abord merci pour ton aide mais j'ai encore quelques petits problèmes,
on va dire que je ne suis pas un as du VBA.
En fait je t explique j'ai une page d acceuil ou j'ai fait des boutons avec
des macros pour activer une feuille précise quand on appuie sur tel bouton.
En voilà un exemple pour aller sur la feuille nommée V-type:
Private Sub CommandButton2_Click()
Worksheets("V-type").Activate
End Sub
Suivant tes conseils j'ai essayé de rajouter ceci :
Private Sub CommandButton1_Click()
Worksheets("V-type").Activate
V-type.Range("B2:T44").Select
ActiveWindow.Zoom = True
End Sub
Si j'ai bien compris ca devrait selectionner la zone entre les cellules B2
et T44 et ensuite appliquer un zoom auto ce qui serait l idéal mais ca ne
fonctionne pas :(
Est ce à cause du nom de ma feuille?? J'ai essayé comme ca "V-type" mais le
resultat est le meme.
J'espere que tu auras la solution.
Merci :)
C'est parfait, exactement ce qu'il me fallait merci à vous deux!!
Bonjour,
Essayez avec cette modification
Private Sub CommandButton1_Click() Worksheets("V-type").Activate Worksheets("V-type").Range("B2:T44").Select ActiveWindow.Zoom = True End Sub
Cordialement.
PMO Patrick Morange
Bonjour Patrick, tout d'abord merci pour ton aide mais j'ai encore quelques petits problèmes, on va dire que je ne suis pas un as du VBA.
En fait je t explique j'ai une page d acceuil ou j'ai fait des boutons avec des macros pour activer une feuille précise quand on appuie sur tel bouton. En voilà un exemple pour aller sur la feuille nommée V-type:
Private Sub CommandButton2_Click() Worksheets("V-type").Activate End Sub
Suivant tes conseils j'ai essayé de rajouter ceci : Private Sub CommandButton1_Click() Worksheets("V-type").Activate V-type.Range("B2:T44").Select ActiveWindow.Zoom = True End Sub
Si j'ai bien compris ca devrait selectionner la zone entre les cellules B2 et T44 et ensuite appliquer un zoom auto ce qui serait l idéal mais ca ne fonctionne pas :( Est ce à cause du nom de ma feuille?? J'ai essayé comme ca "V-type" mais le resultat est le meme. J'espere que tu auras la solution. Merci :)