Comment insérer une image dans une cellule en utilisant VBA dans Excel

Vous pouvez facilement insérer des images dans des feuilles de calcul Excel et les modifier avec du code macro. Voici comment insérer une image dans une cellule à l'aide de VBA dans Excel .

Comment insérer une image dans une cellule en utilisant VBA dans Excel

Visual Basic pour Applications, en abrégé VBA, est une forme de Visual Basic 6 intégrée aux programmes Microsoft Office. Grâce au codage, VBA vous permet d'automatiser les tâches dans les applications Office, notamment Excel. Dans certains cas, vous pouvez même ajouter de nouvelles fonctionnalités à Excel à l'aide de VBA.

Même si vous devez travailler avec du code pour utiliser VBA, cela ne signifie pas que VBA regorge de lettres et de chiffres. Avec VBA dans Excel, vous pouvez créer une macro qui vous permet d'insérer une image dans une cellule ou une plage de cellules. Voici ce que vous devez savoir sur l'insertion d'images dans des cellules dans Excel à l'aide de VBA.

Comment insérer des images dans des cellules à l'aide de VBA dans Excel

Pour créer une macro qui insère une image dans une cellule Excel à l'aide de VBA, vous n'avez vraiment pas besoin de connaissances avancées en Visual Basic. Tout ce que vous avez à faire est d'activer les outils de développement, de créer une macro et de coller le code approprié. Bien entendu, vous pouvez également insérer des images dans Excel sans utiliser VBA. Cependant, dans cet article, nous nous concentrerons sur VBA.

1. Activez les outils de développement

Pour utiliser VBA dans Excel, vous devez activer les outils de développement. Cette action activera l'onglet Développeur dans le ruban, qui est désactivé par défaut.

  1. Ouvrez Excel .
  2. Allez dans le menu Fichier .
  3. Cliquez sur Options en bas de l'écran. La fenêtre Options Excel apparaîtra.
  4. Dans les options Excel, accédez à l' onglet Personnaliser le ruban .
  5. Dans les onglets principaux , cochez Developer .

Comment insérer une image dans une cellule en utilisant VBA dans Excel

Les outils de développement, y compris l'accès VBA, sont désormais activés. Vous n'avez pas besoin de le faire à chaque fois que vous souhaitez utiliser VBA dans Excel. Les outils de développement seront toujours activés jusqu'à ce que vous les désactiviez.

2. Créez des macros et insérez du code

  1. Dans Excel, accédez à l' onglet Développeur .
  2. Dans la section Code, sélectionnez Macros .
  3. Dans la nouvelle fenêtre, entrez le nom de votre macro dans Nom de la macro . L'article utilisera insertPhotoMacro .
  4. Cliquez sur Créer .

Comment insérer une image dans une cellule en utilisant VBA dans Excel

Après avoir cliqué sur Créer, la fenêtre VBA s'ouvrira et affichera le code de votre macro. Actuellement, le code sera composé de 2 lignes : un Sub pour démarrer la macro et un End Sub pour y mettre fin.

Comment insérer une image dans une cellule en utilisant VBA dans Excel

Ajoutez un peu de code à cette macro. Ajoutez la ligne de code suivante entre les deux lignes :

Dim photoNameAndPath As Variant
Dim photo As Picture
photoNameAndPath = Application.GetOpenFilename(Title:="Select Photo to Insert")
If photoNameAndPath = False Then Exit Sub
Set photo = ActiveSheet.Pictures.Insert(photoNameAndPath)
With photo
.Left = ActiveSheet.Range("A1").Left
.Top = ActiveSheet.Range("A1").Top
.Width = ActiveSheet.Range("A1").Width
.Height = ActiveSheet.Range("A1").Height
.Placement = 1
End With

Le code final ressemblera à ceci :

Comment insérer une image dans une cellule en utilisant VBA dans Excel

Vous n'avez pas à vous soucier de sauvegarder ce processus. Toutes les modifications que vous apportez dans VBA sont enregistrées immédiatement.

Il est maintenant temps de voir le code en action :

  1. Fermez la fenêtre VBA.
  2. Accédez à l' onglet Développeur dans Excel.
  3. Sélectionnez Macros dans la section Code.
  4. Mettez en surbrillance la macro que vous venez de créer.
  5. Cliquez sur Exécuter .

Maintenant, un message s'ouvrira vous demandant de localiser le fichier image que vous souhaitez insérer. Sélectionnez la photo, puis cliquez sur Ouvrir. Vous verrez maintenant l'image dans la cellule A1.

Notez qu'Excel réduira l'image pour qu'elle tienne dans la cellule A1. Vous pouvez le modifier et modifier le code pour insérer des images dans d'autres cellules, même dans une plage de cellules. Dans la section suivante, nous séparerons le code et expliquerons les paramètres.

3. Diviser le code

Pour que le code VBA fonctionne comme vous le souhaitez, vous devez le comprendre. Ce faisant, vous pouvez modifier le code pour insérer des images dans n'importe quelle cellule, quelle que soit sa taille.

Sub insertPhotoMacro()
Dim photoNameAndPath As Variant
Dim photo As Picture
photoNameAndPath = Application.GetOpenFilename(Title:="Select Photo to Insert")
If photoNameAndPath = False Then Exit Sub
Set photo = ActiveSheet.Pictures.Insert(photoNameAndPath)
With photo
.Left = ActiveSheet.Range("A1").Left
.Top = ActiveSheet.Range("A1").Top
.Width = ActiveSheet.Range("A1").Width
.Height = ActiveSheet.Range("A1").Height
.Placement = 1
End With
End Sub

Lorsque le code commence, l'instruction Dim est utilisée pour déterminer le type de variable. Nous avons deux types de variables : photoNameAndPath et photo . D'abord la variable, puis l'image.

À partir de là, la variable photoNameAndPath s'exécute et ouvrira une application pour obtenir l'emplacement du fichier photo. Cela se fait via Application.GetOpenFileName . Le paramètre Titre est facultatif. Le contenu qu'il contient est affiché sous forme de nom de fenêtre.

En utilisant If photoNameAndPath = False Then Exit Sub , si une adresse invalide ou vide est donnée, le processus se terminera. Cependant, si un fichier approprié est fourni, Set photo = ActiveSheet.Pictures.Insert(photoNameAndPath) indique que l'image doit être définie en tant que variable telle que définie à l'origine. Il sera inséré dans la feuille de calcul active.

Enfin, utilisez Avec photo et les 5 lignes qui suivent pour déterminer l'emplacement de la photo. .Left et .Top font référence à la position de départ, tandis que .Width et .Height font référence à la position finale. Si vous avez l'intention d'insérer des images dans une autre cellule ou une plage, ce sont ces lignes que vous devez modifier.

.Placement indique que l'image doit être redimensionnée pour s'adapter à la cellule ou à la forme libre insérée. Le définir sur 1 le redimensionnera en fonction de la cellule.

Enfin, le code ci-dessus utilise End With , puis End Sub pour fermer la macro. Vous pouvez maintenant modifier les variables photoNameAndPath et photo par n'importe quel autre nom de votre choix. N'oubliez pas de garder les noms cohérents dans tout le code.

Ci-dessus, comment utiliser VBA pour insérer des images dans des cellules dans Excel . J'espère que l'article vous sera utile.

Sign up and earn $1000 a day ⋙

Comment colorer les signes dans Minecraft

Comment colorer les signes dans Minecraft

Minecraft, le jeu bac à sable bien-aimé qui a conquis le cœur des joueurs du monde entier, offre un monde sans limites de créativité et d'exploration. L'un des

Comment retirer la façade de la sonnette Ring

Comment retirer la façade de la sonnette Ring

Les appareils Ring Doorbell deviennent progressivement de plus en plus populaires. Ce sont d'excellents ajouts à tout foyer, car ils améliorent considérablement la sécurité,

CapCut : Comment obtenir le modèle « Pourquoi maimeriez-vous »

CapCut : Comment obtenir le modèle « Pourquoi maimeriez-vous »

Découvrez comment utiliser le modèle CapCut Why Should U Like Me pour faire ressortir vos vidéos et attirer plus de vues.

Comment contrôler le volume sur votre Amazon Fire Stick

Comment contrôler le volume sur votre Amazon Fire Stick

Essayer de gérer les télécommandes en 2024, c'est comme essayer de gérer les factures. Heureusement, si vous utilisez un Fire Stick pour diffuser vos émissions préférées et

Comment lier les médias sociaux dans Squarespace

Comment lier les médias sociaux dans Squarespace

Un bon site Web créé avec Squarespace peut améliorer considérablement votre présence en ligne et attirer plus de visiteurs vers votre entreprise. Mais il existe un moyen de

Comment masquer les alertes IMessage

Comment masquer les alertes IMessage

Avez-vous déjà été au travail ou à l'école et avez-vous reçu une notification iMessage que vous ne vouliez pas que quelqu'un d'autre voie ? Heureusement, il existe des moyens d'arrêter

Comment se glisser dans les DM

Comment se glisser dans les DM

Même si autrefois cela était lié à la poursuite d'une personne qui vous attire, « se glisser dans les DM » est désormais un terme plus large pour contacter quelqu'un via les réseaux sociaux.

Comment changer de navire dans Starfield

Comment changer de navire dans Starfield

Si votre vaisseau actuel ne suffit pas lorsque vous parcourez l'univers Starfield, il est temps de passer à un vaisseau qui fera l'affaire. Cependant, Starfield est

Comment construire un navire à partir de zéro dans Starfield

Comment construire un navire à partir de zéro dans Starfield

Votre vaisseau est un élément central de votre expérience Starfield. Vous y vivrez, y combattrez et y explorerez. Le jeu vous permet de le mettre à niveau au fur et à mesure

Comment supprimer larrière-plan dune photo dans PhotoPea

Comment supprimer larrière-plan dune photo dans PhotoPea

Photopea est un éditeur de photos et de graphiques en ligne qui permet aux utilisateurs de modifier leurs images sans avoir besoin d'abonnements coûteux à des applications. Cela peut fonctionner comme un

Comment supprimer toutes les photos de votre iPhone (sans les perdre définitivement)

Comment supprimer toutes les photos de votre iPhone (sans les perdre définitivement)

Étant donné que les téléphones Apple ne sont dotés que d’une quantité définie de stockage interne qui ne peut pas être étendue, vous risquez de manquer rapidement d’espace. À un moment donné, vous pourrez

Comment ajouter des puces dans Google Sheets

Comment ajouter des puces dans Google Sheets

Lorsque vous faites des listes, les puces peuvent s'avérer utiles. Ils séparent soigneusement tout et vous permettent d'organiser les informations. Vous pouvez insérer une puce

Comment fabriquer une scierie à Terraria

Comment fabriquer une scierie à Terraria

Avez-vous cherché des moyens d’embellir votre maison à Terraria ? L'acquisition d'une scierie est l'un des moyens les plus pratiques pour meubler votre maison dans ce pays.

Comment exporter vers MP3 dans Garageband

Comment exporter vers MP3 dans Garageband

Découvrez comment exporter de Garageband vers MP3 sur votre Mac, iPhone ou iPad, y compris dans une région spécifique, dans ce guide.

Comment ajouter des blocs dans Super Mario Bros Wonder

Comment ajouter des blocs dans Super Mario Bros Wonder

Les blocs font partie intégrante de la franchise Super Mario Bros. depuis ses débuts. Ils cachent souvent des pièces et des bonus à l'intérieur ou vous aident à naviguer dans chaque niveau.

Comment mettre à jour les applications sur Hisense TV

Comment mettre à jour les applications sur Hisense TV

Hisense est une marque de plus en plus populaire en matière de technologie Smart TV. Ils fabriquent des unités LED et ULED (Ultra LED) économiques qui

Comment changer le nom dun thème WordPress

Comment changer le nom dun thème WordPress

Découvrez comment changer facilement le nom de votre thème WordPress et personnaliser votre site Web en fonction de votre marque

Roblox : Comment obtenir la tête sans tête

Roblox : Comment obtenir la tête sans tête

Un guide complet pour acheter ou échanger la tête sans tête exclusive, connue pour son effet décoratif unique, dans Robolox.

Comment cibler les moteurs dans Starfield

Comment cibler les moteurs dans Starfield

Si vous essayez de piller ou de réquisitionner un navire dans Starfield, vous devez d'abord vous assurer qu'il ne peut pas échapper au combat. La désactivation des moteurs d'un navire est un précurseur

Comment diviser dans Excel

Comment diviser dans Excel

Microsoft Excel, réputé pour sa capacité à effectuer des calculs complexes, peut également faciliter une division simple. Cela peut être utile dans des situations réelles,