Redimensionner une image dans Excel (VBA) grâce à des cellules

Résolu/Fermé
STVNA Messages postés 31 Date d'inscription dimanche 17 septembre 2017 Statut Membre Dernière intervention 30 avril 2020 - 13 déc. 2018 à 12:08
STVNA Messages postés 31 Date d'inscription dimanche 17 septembre 2017 Statut Membre Dernière intervention 30 avril 2020 - 21 déc. 2018 à 12:50
Bonjour à tous !

En 2015, j'ai posté cette question : https://forums.commentcamarche.net/forum/affich-31772094-redimensionner-une-image-automatiquement-avec-excel-vba

On aimerait maintenant redimensionner une image dans Excel de cette manière : lorsque l'on met une largeur et une hauteur dans des cellules, une image se redimensionne toute seule en fonction de ces valeurs et donc en utilisant VBA.

Merci d'avance !

1 réponse

danielc0 Messages postés 832 Date d'inscription mardi 5 juin 2018 Statut Membre Dernière intervention 19 avril 2024 74
13 déc. 2018 à 14:47
Bonjour,

En supposant qu'il n'y ait qu'une seule image sur la feuille, mets cette macro dans le module de la feuille :

Private Sub Worksheet_Change(ByVal Target As Range)
  If [A1] <> "" And [A2] <> "" And IsNumeric([A1]) And IsNumeric([A2]) Then
    If Target.Address = "$a$1" Or Target.Address = "$a$2" Then
      With ActiveSheet.Pictures(1)
        .Height = [A1]
        .Width = [A2]
      End With
    End If
  End If
End Sub



A1=hauteur
A2= largeur
Avec les valeurs en points.

Cordialement.
0
STVNA Messages postés 31 Date d'inscription dimanche 17 septembre 2017 Statut Membre Dernière intervention 30 avril 2020
13 déc. 2018 à 16:11
Bonjour,
Merci pour votre réponse !
Mais cela ne fonctionne pas. Où doit-on exactement placer la macro ?
0
danielc0 Messages postés 832 Date d'inscription mardi 5 juin 2018 Statut Membre Dernière intervention 19 avril 2024 74 > STVNA Messages postés 31 Date d'inscription dimanche 17 septembre 2017 Statut Membre Dernière intervention 30 avril 2020
13 déc. 2018 à 16:22
N'inverse pas les choses. Si tu ne sais pas où placer la macro, tu ne peux pas dire qu'elle ne fonctionne pas.
Fais un clic droit sur l'onglet de la feuille contenant l'image et clique sur "Visualiser le code". Colle la macro dans la partie droite de la fenêtre VBE.

Daniel
0