Redimentionner d'une image ou forme excel par un chiffre

Fermé
Zemoda - 14 mars 2014 à 13:49
via55 Messages postés 14502 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 9 décembre 2024 - 14 mars 2014 à 15:37
Bonjour,

je souhaiterais redimentionner en hauteur une image importé ou une forme excel, un rectangle par exemple, à partir d'un chiffre allant de 1 à 100 ce trouvant dans une cellule excel.

100 représenterais la hauteur maximal de l'image et 1 serait équivalent a 1% de la hauteur.

Sachant que je souhaite faire varier plusieur voir ce chiffre par la suite... Et donc toujours garder la même proportion d'images.

Sachant que je ne m'y connais pas trop en excel. Je ne sais même pas si c'est possible.

Je travail sur excel 2010.

Je vous remercie par avance si vous connaissez un moyen de lier une cellule excel à la hauteur d'une image...

A voir également:

2 réponses

Raymond PENTIER Messages postés 58764 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 19 décembre 2024 17 257
14 mars 2014 à 14:21
Non, ce n'est pas possible.

Mais peut-être qu'un spécialiste de VBA pourrait t'écrire une macro ...
0
via55 Messages postés 14502 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 9 décembre 2024 2 737
14 mars 2014 à 15:37
Bonjour à vous 2

Comme dit Raymond il faut passer par un code VBA

En supposant la valeur variable de 1 à 100 en C2 et la forme affichée nommée maforme (dans la Zone nom en haut à gauche)

Alt + F11 pour ouvrir l'éditeur VBA

Copier et coller le code suivant dans la fenêtre VBA

Private Sub Worksheet_Change(ByVal Target As Range)

If Target.Row <> 2 And Target.Column <> 3 Then Exit Sub 'Ne fait rien si changement dans une cellule autre que C2 (ligne 2, colonne 3)

pourcentage = Target.Value / 100 'Prends la valeur en C2 et la dicise par 100

hauteur = 5 ' remplacer 5 ici par la hauteur en cm de l'original de départ
largeur = 12 ' remplacer 12 ici par la largeur en cm de l'original de départ

'Application du pourcentage à la taille image et convesrion des cms en points pour l'affichage
Shapes("maforme").Height = Application.CentimetersToPoints(hauteur * pourcentage)
Shapes("maforme").Width = Application.CentimetersToPoints(largeur * pourcentage)

End Sub

A ADAPTER :
-en changeant le n° de ligne et le n° de colonne dans la 1ere ligne si autre cellule que C2
- en indiquant les dimensions réelles de l'original dans hauteur et largeur
- en remplaçant maforme dans les dernières lignes par le nom réel de ta forme

Cdlmnt
0