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

Résolu
STVNA Messages postés 32 Statut Membre -  
STVNA Messages postés 32 Statut Membre -
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

  1. danielc0 Messages postés 2215 Date d'inscription   Statut Membre Dernière intervention   294
     
    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
    1. STVNA Messages postés 32 Statut Membre
       
      Bonjour,
      Merci pour votre réponse !
      Mais cela ne fonctionne pas. Où doit-on exactement placer la macro ?
      0
    2. danielc0 Messages postés 2215 Date d'inscription   Statut Membre Dernière intervention   294 > STVNA Messages postés 32 Statut Membre
       
      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
    3. STVNA Messages postés 32 Statut Membre
       
      C'est exactement ce que nous avons fait. Est-ce que nous devons renommer l'onglet ou l'image ?
      Et que voulez-vous par mettre les valeurs en points ?
      Merci d'avance.
      0
    4. danielc0 Messages postés 2215 Date d'inscription   Statut Membre Dernière intervention   294 > STVNA Messages postés 32 Statut Membre
       
      Pas besoin de renommer l'image. Par contre, il doit y en avoir qu'une sur la feuille.
      Le point vaut 1/72 de pouce et le pouce vaut 2.54 cm. Le classeur doit être enregistré au format .xlsm et les macros doivent activées. Si tu as toujours un problème, mets ton classeur sur mon-partage.fr et poste le lien obtenu.

      Daniel
      0
    5. STVNA Messages postés 32 Statut Membre
       
      Merci. Voici le lien vers le fichier : https://mon-partage.fr/f/AgHYchs9/ . Pouvez-vous y jeter un coup d'oeil ? Encore merci.
      0