Redimensionner une image à la taille écran

  • Initiateur de la discussion Initiateur de la discussion mifetmaf
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

mifetmaf

XLDnaute Nouveau
Bonjour,
j'ai crée un tableau de bord d'indicateurs sous Excel 2007. Ce tableau de bord est partagé entre plusieurs utilisateurs
Je me heurte à deux problèmes:
1- J'ai inséré un logo (image) en arrière plan. Ce logo devrait prendre la taille de l'écran. Le problème réside dans le fait que les utilisateurs n'ont pas les mêmes écrans (taille, résolution). Le logo peut donc faire la taille de l'écran pour un utilisateur, et la moitié de l'écran pour un autre. Y a t il possibilité de programmer l'image afin qu'ells s'adapte automatiquement à la taille et résolution des différents écran?
2- Second soucis, peut on positionner des macros avec des valeurs relatives (en fonction des bord de l'écran) afin qu'elles se trouve toujours au même endroit (par rapport à l'image d'arrière plan), quelque soit l'écran utilisé
Merci d'avance

PS: Je suis néophyte en VBA
 
Re : Redimensionner une image à la taille écran

Bonjour mifetmaf, bienvenue sur XLD.

Je comprends que vous avez 2 images, Image 1 à adapter à la taille de la fenêtre (pas de l'écran), Image 2 à dimensionner et positionner.

Clic droit sur chacune des images => Format de l'image => onglet Dimension et vérifier que les cases "Proportionnel" sont bien cochées.

Aller dans VBA (Alt+F11), double-clic sur ThisWorkbook et y coller le code suivant :

Code:
Private Sub Workbook_Open() 'déclanchement de la macro à l'ouverture du fichier
Dim k1, k2, k3
'rapports à déterminer préalablement
k1 = 0.5
k2 = 0.18
k3 = 0.25
With Sheets("Feuil1").Shapes("Image 1") 'noms à adapter
  .Width = ActiveWindow.Width 'Ajustement de la taille de "Image 1"
End With
With Sheets("Feuil1").Shapes("Image 2") 'noms à adapter
  .Width = k1 * ActiveWindow.Width 'Ajustement de la taille de "Image 2"
  .Top = k2 * ActiveWindow.Width 'position relative du bord supérieur
  .Left = k3 * ActiveWindow.Width 'position relative du bord gauche
End With
End Sub

Comme indiqué, les coefficients k1 k2 k3 sont à déterminer préalablement par tâtonnements ou mesures.

A+
 
Dernière édition:
Re : Redimensionner une image à la taille écran

Bonjour Job75 et merci pour votre réponse.
Malheureusement je pense avoir mal formulé mon soucis.
Je tente d'être plus clair:

- Le tableau de bord est un fichier Excel 2007 partagé en réseau entre différents utilisateurs.
- Les 5 premières feuilles du fichier sont des menus et sous menus auxquels on accède à l'aide de boutons (macros)

Exemple:
- Ouverture systématiquement à la première feuille où figure deux boutons.
Le bouton 1 redirige à la feuille 2
Le bouton 2 redirige à la feuille 3
- La feuille 2 (sous menu de la feuille 1) possède différents boutons qui redirigent vers d'autres feuilles (où figurent les tableaux de saisie de statistiques)
- Idem pour la feuille 3

Mon soucis est le suivant.
-J'ai collé une image en fond d'écran sur les 5 premières feuilles et j'aimerai que, quelquesoit l'utilisateur, cette image apparaisse sur la fenêtre entière quelque soit la résolution de l'utilisateur.
Deuxième soucis, j'aimerai que les boutons gardent leur taille et place d'origine sur le fond d'écran

Merci pour votre aide
 
Re : Redimensionner une image à la taille écran

Bonjour Jokair,

Essayons de résoudre notre problème ensemble (et avec l'aide de la communauté bien sur!).
J'ai copié/collé l'image en fond d'écran. Dans ton message tu dis l'avoir inséré via macro. Peux tu me dire comment tu as fais et quels sont selon toi les avantages de cette méthode.
J'ai utilisé le code de Job75 (que je remercie au passage pour son aide) et cela est très interessant pour adapter l'image à la largeur de la fenêtre. Je recherche maintenant le même code pour adapter l'image à la hauteur de la fenêtre (le résultat avec la case "proportionnelle" cochée n'est pas satisfaisante)

Au plaisir à tous...
 
Re : Redimensionner une image à la taille écran

J'ai utilisé cette macro:

Code:
Sub cmd_micro_inserer_Click()
MaHauteur = 140
Range("photo_micro").Select
Call selectionner_image
End Sub

Code:
Sub selectionner_image()

If MsgBox("Parcourir pour sélectionner la photo à insérer?", vbYesNo, "Insertion de la photo") = vbYes Then
reponse = Application.Dialogs(xlDialogInsertPicture).Show
            If reponse = True Then
            With Selection.ShapeRange
            .LockAspectRatio = msoTrue
            .ScaleHeight 1, False
            .ScaleWidth 1, False
            .Height = MaHauteur
           '.Width = MaLargeur
            .LockAspectRatio = msoTrue
            .IncrementTop 0
            .IncrementLeft 0
            .ZOrder msoBringToFront

            End With
            End If
End If
End Sub

Voilou
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Retour