Comment zoomer sur une image

Fermé
vieuxray - 3 mars 2022 à 12:22
 vieuxray - 10 mars 2022 à 12:29
Excel 2007
Bonjour a tous et toutes, forum bonjour

Je cherche un petit code vba qui pourrai en plaçant le curseur a un endroit d'une image ou photo
et sur un ou plusieurs clics agrandir l'image sans perte de qualité si possible et afficher le pourcentage du zoom 10% ou 20% et revenir en arrière.
--- Pour déterminer le facteur zoom je ne sais pas comment faire

--- une idée comme ca un clic on zoom 10% encore un clic on zoom encore 10% de plus etc etc etc

avec deux boutons un pour le zoom et un pour faire revenir la photo ou l'image a la normale.

Merci de votre aide et bon app

bonne journée a tous

Cdlt Ray
A voir également:

14 réponses

cs_Le Pivert Messages postés 7903 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 11 mars 2024 728
3 mars 2022 à 14:31
Bonjour,

en utilisant un SpinButton que tu associes à la longueur et la hauteur de ton image:

https://www.mediaforma.com/vba-excel-spinbutton-boite-de-dialogue-personnalisee/

1
cs_Le Pivert Messages postés 7903 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 11 mars 2024 728
3 mars 2022 à 16:19
voir la marche à suivre:



faire un double clic sur le Spinbutton et mettre ce code:

Option Explicit
Private Sub SpinButton1_Change()
ActiveSheet.Shapes("Image 1").Width = SpinButton1.Value
End Sub


Voilà

@+ Le Pivert
1
Salut Le Pivert,

Merci pour ta réponse,

J'ai essayer mais pas réussi c'est mal expliquer sur pas a pas et un peu confus.

j'ai fait UF, j'ai mis le spin button, j'ai mis ton petit code dans le spin button.

Après je comprends plus rien

Bonne fin d'après midi a toi

Cdlt Ray
1
cs_Le Pivert Messages postés 7903 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 11 mars 2024 728
Modifié le 3 mars 2022 à 17:44
J'ai mis une capture d'écran exprès!

C'est sur la feuille qu'il faut mettre le control et non pas dans un UserForm

regarde bien la capture d'écran

marche à suivre pour insérer un control

https://www.excel-pratique.com/fr/vba/controles-feuille


1
Re Le Pivert,

Merci pour ta réponse
Vu comme ca je comprends mieux pourtant sur la première photo du premier lien il est bien écrit Userform2 avec deux spin button qui m'a induit en erreur
je fait ca demain trop tard 19h c'est l'heure lol
bonne soirée a toi et merci
Cdlt Ray
1

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_Le Pivert Messages postés 7903 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 11 mars 2024 728
4 mars 2022 à 16:03
je n'ai pas répondu à ta question, parce qu'à part avoir recours à Photoshop je ne vois rien d'autre

LOL
1
Re

Ok merci tout de même, c'est déjà bien ce que j'ai maintenant grâce a toi et je t'en remercie beaucoup.

Je te souhaite un bon W-end, encore merci pour ton aide et ton savoir partager.

Bye Bye a une prochaine fois LOL

Bien cordialement Raymond
1
Salut cs_Le_Pivert

Merci pour ta réponse,

J'ai suivi ton conseil et je ne suis pas convaincu car pour moi

l'image au plus petit devrai faire environ 25%
l'image au plus grand devrai faire faire environ 150%
Ou bien je n'ai pas tout compris sur la façon d'afficher a peu près la bonne valeur

je te joint mon fichier tu verra par toi mème
le code concernant le zoom est en bas de la feuil1

je te remercie pour ton aide, bonne après midi.

Cdlt Ray

https://www.cjoint.com/c/LCjprrBrSsG
1
cs_Le Pivert Messages postés 7903 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 11 mars 2024 728
9 mars 2022 à 16:49
Il faut aller dans les propriétés du SpinButton1 et mettre Max à 550 et Min à 100

ensuite corriger le code comme ceci:

Private Sub SpinButton1_Change()
ActiveSheet.Shapes("Image 5").Width = SpinButton1.Value
Range("K13").Value = "Zoom " & SpinButton1.Value - 100 & " %"
End Sub


Voilà

@+
1
Re
merci pour ta réponse,

j'ai fait comme conseillé, et l'image en diminuant le zoom devient minuscule et trop grande en augmentant le zoom

voila le résultat de mon essai.

Mais si tu a essayer le fichier sur ton écran il est possible que ça ne soit pas compatible.

Moi j'ai un HDMI senseye 3 LED GW 2765 Benq

Bonne soirée a toi
.
Cdlt Ray
1
cs_Le Pivert Messages postés 7903 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 11 mars 2024 728
9 mars 2022 à 18:17
voilà ton classeur modifié:

https://www.cjoint.com/c/LCjrqqzAi11

@+
1
Salut cs le pivert

Merci pour ta réponse et pour le retour du fichier.
Vu que je n'ai pas besoin de précision absolue je vais me contenter
de ton travail, ce n'ai pas trop mal et de toutes façons c'est mieux donc je garde.

Je te remercie une fois de plus et je te souhaite une très bonne soirée.

Bye bye
Bien cordialement Raymond
1
Re cs_Le Pivert,

Merci pour ta réponse,

C'est bon pour moi, j'ai juste remplacer 450% par 437 % maxi chez moi
la macro se lance a 437 % on va pas chipoter, ca fonctionne bien ca calle l'image
comme il faut juste avant de commencer, très bien.


Vu l'heure bon app et bonne après midi

Encore a toi pour ton aide.

je passe en résolu le sujet

Merci bien cordialement Raymond
1
Salut Le Pivert,

Bon alors j'ai mis le spin button sur la page avec les paramètres plus le petit code que tu m'a dit et c'est bon ca fonctionne bien, rien fait d'autres et pas continuer le lien jusqu'au bout.

-Sinon il serai possible svp en plaçant le curseur a un endroit d'une image ou photo zoomer un endroit de la zone autour de la sélection faites avec la souris, plutot que de tout zoomer.

-Et si possible de faire afficher sur la page a coté du spin button le suivi en fonction du déplacement les paramètres du zoom en cours par EX (Zoom 25%)

Sinon c'est pas mal et rapide

Merci de ton aide pour paufiner et ca sera bon pour moi.

Bon w-end a toi
Cdlt Ray
0
cs_Le Pivert Messages postés 7903 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 11 mars 2024 728
4 mars 2022 à 12:05
pour afficher le zoom:

Option Explicit
Private Sub SpinButton1_Change()
ActiveSheet.Shapes("Image 1").Width = SpinButton1.Value
Range("H5").Value = "Zoom " & SpinButton1.Value - 200 & " %"
'200 valeur mini à adapter ainsi que la cellule réceptrice
End Sub


Voilà
1
cs_Le Pivert Messages postés 7903 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 11 mars 2024 728 > cs_Le Pivert Messages postés 7903 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 11 mars 2024
4 mars 2022 à 14:23
1
Salut le pivert

Merci pour le code et ton aide
ca fonctionne super bien merci

Sinon tu n'a pas répondu a ma question.

-Sinon il serai possible svp en plaçant le curseur a un endroit d'une image ou photo et zoomer un endroit de la zone autour de la sélection faites avec la souris, plutot que de tout zoomer ???

Non je ne connaissais pas pour l'appareil photo je vais regarder ca

Merci et bonne après midi a toi.

Cdlt Ray
0
Salut cs_Le_Pivert,

Je reviens vers toi car le zoom me parait ne pas correspondre a la réalité
-Quand l'image est au plus grand j'ai un zoom de 367%
-Quand l'image est au plus petit j'ai un zoom de -123%

En sachant que je travaille avec un affichage permanent Zoom Excel de 150 % sinon c'est trop compliqué on ne voit pas bien, 150% en affichage est correct.

Donc svp comment on fait le calcul du zoom pour être au plus près du zoom150% affichage Excel


Private Sub SpinButton1_Change()
ActiveSheet.Shapes("Image 5").Width = SpinButton1.Value
Range("K13").Value = "Zoom " & SpinButton1.Value - 200 & " %"
End Sub


Merci pour ton aide et vu l'heure, bon app a toi

Cdlt Raymond
0
cs_Le Pivert Messages postés 7903 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 11 mars 2024 728
9 mars 2022 à 14:35
j'ai essayé avec le zoom de la feuille à 150%, aucune incidence.

Il faut remplacer 200 par une valeur correspondant à la largeur de l'image au minimum

Voilà
1
Salut cs_Le Pivert,

Je n'arrive pas a effectuer un test pour lancer la macro citer si dessous.

Afin de rattraper le léger décalage de la position de l'image.
Je souhaiterai effectuer un petit test pour lancer la macro "Positionnement_Haut" qui va me replacer l'image5 nickel au bon endroit.

Merci pour ton aide et une bonne journée a toi.
Cdlt Ray



Private Sub SpinButton1_Change()
ActiveSheet.Shapes("Image 5").Width = SpinButton1.Value
Range("K13").Value = "Zoom " & SpinButton1.Value - 100 & " %"

' Ici je pense pour le test pour lancer la macro "Positionnement_Haut" ???

End Sub
0
cs_Le Pivert Messages postés 7903 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 11 mars 2024 728
10 mars 2022 à 12:18
comme ceci:

Private Sub SpinButton1_Change()
ActiveSheet.Shapes("Image 5").Width = SpinButton1.Value
Range("K13").Value = "Zoom " & SpinButton1.Value - 100 & " %"
If Range("K13").Value = "Zoom 450 %" Then
Positionnement_Haut
End If
End Sub


Voilà

@+
1