web-dev-qa-db-fra.com

Insérer une image dans une cellule Excel

Je m'attache à générer un rapport avec des images, mais je ne peux pas obtenir les images dans une seule cellule. Je peux faire en sorte que les images "flottent" autour de ma feuille de travail, mais je dois les mettre dans une cellule. Comment puis-je faire ceci?

135
Reid

Vous pouvez ajouter l'image dans un commentaire.

Cliquez avec le bouton droit de la souris sur la cellule> Insérer un commentaire> cliquez avec le bouton droit de la souris sur l'ombré (zone grise) à l'extérieur de la zone de commentaire> Commentaire du format> Couleurs et traits> Remplissage> Couleur> Effets de remplissage> Image> (Parcourir l'image)> Cliquez sur OK.

L'image apparaîtra au survol.

Microsoft Office 365 (2019) a introduit de nouveaux éléments appelés commentaires et a renommé les anciens commentaires en " notes ". Par conséquent, dans les étapes ci-dessus, faites New Note au lieu de Insert Comment. Toutes les autres étapes restent les mêmes et la fonctionnalité existe toujours.


Il existe également un produit à 20 $ pour Windows - Excel Image Assistant ...

107
Amber

Il existe un moyen plus rapide ( https://www.youtube.com/watch?v=TSjEMLBAYVc ):

  1. Insérer une image (Ctrl + V) dans Excel.
  2. Validez "Outils d'image -> Aligner -> Aligner sur la grille" est cochée
  3. Redimensionner l'image pour l'adapter à la cellule (ou au nombre de cellules)
  4. Faites un clic droit sur l'image et cochez la case "Taille et propriétés ... -> Propriétés -> Déplacer et dimensionner avec des cellules"
46
vr286

il suffit d'aller dans Google Documents et de coller ceci en tant que formule, où URL est un lien vers votre image.

      =image("URL", 1)

ensuite, à partir des options de Google Documents, téléchargez-le pour Excel et vous aurez votre image dans la cellule. ÉDITER Par commentaires, vous n'avez pas besoin de conserver l'URL de l'image aussi longtemps, mais suffisamment pour qu'Excel le télécharge. Ensuite, il restera intégré au fichier.

16
virgula24

Maintenant, nous pouvons ajouter une image à Excel directement et facilement. Il suffit de suivre ces instructions:

  1. Allez à l'onglet Insérer.
  2. Cliquez sur l’option Images (dans le groupe d’illustrations). image1
  3. Dans la boîte de dialogue "Insérer une image", localisez les images que vous souhaitez insérer dans une cellule d'Excel. image2
  4. Cliquez sur le bouton Insérer. image3
  5. Redimensionnez l'image/image afin qu'elle s'adapte parfaitement à la cellule. image4
  6. Placez la photo dans la cellule. Une bonne façon de faire est d’appuyer d’abord sur la touche ALT puis de déplacer l’image avec la souris. Il se cassera et s'arrangera avec le bord de la cellule dès qu'il s'en approchera.

Si vous avez plusieurs images, vous pouvez sélectionner et insérer toutes les images à la fois (comme indiqué à l'étape 4).

Vous pouvez également redimensionner les images en les sélectionnant et en faisant glisser les bords. Dans le cas de logos ou d'images de produits, vous pouvez conserver le rapport hauteur/largeur de l'image. Pour conserver le rapport d'aspect intact, utilisez les coins d'une image pour la redimensionner.


Lorsque vous placez une image dans une cellule en suivant les étapes ci-dessus, elle ne collera pas à la cellule si vous redimensionnez, filtrez ou masquez les cellules. Si vous souhaitez que l’image adhère à la cellule, vous devez la verrouiller sur la cellule où elle est placée.

Pour ce faire, vous devez suivre les étapes supplémentaires indiquées ci-dessous.

  1. Cliquez avec le bouton droit sur l'image et sélectionnez Formater l'image. image5
  2. Dans le volet Formatage de l’image, sélectionnez Taille et propriétés et, avec les options de Propriétés, sélectionnez ‘Déplacer et dimensionner avec des cellules’. image6

Vous pouvez maintenant déplacer des cellules, les filtrer ou les masquer, et l'image sera également déplacée/filtrée/masquée.


NOTE:

Cette réponse provient de ce lien: Insérer une image dans une cellule dans Excel .

5
ziMtyth

Bien que ma recommandation soit de tirer parti de l’automatisation disponible à partir de Doality.com spécifiquement Picture Manager for Excel

Le code vba suivant devrait répondre à vos critères. Bonne chance!

Ajoutez un contrôle de bouton à votre classeur Excel, puis double-cliquez sur le bouton pour accéder au code VBA ->

Sub Button1_Click()
    Dim filePathCell As Range
    Dim imageLocationCell As Range
    Dim filePath As String

    Set filePathCell = Application.InputBox(Prompt:= _
        "Please select the cell that contains the reference path to your image file", _
            Title:="Specify File Path", Type:=8)

     Set imageLocationCell = Application.InputBox(Prompt:= _
        "Please select the cell where you would like your image to be inserted.", _
            Title:="Image Cell", Type:=8)

    If filePathCell Is Nothing Then
       MsgBox ("Please make a selection for file path")
       Exit Sub
    Else
      If filePathCell.Cells.Count > 1 Then
        MsgBox ("Please select only a single cell that contains the file location")
        Exit Sub
      Else
        filePath = Cells(filePathCell.Row, filePathCell.Column).Value
      End If
    End If

    If imageLocationCell Is Nothing Then
       MsgBox ("Please make a selection for image location")
       Exit Sub
    Else
      If imageLocationCell.Cells.Count > 1 Then
        MsgBox ("Please select only a single cell where you want the image to be populated")
        Exit Sub
      Else
        InsertPic filePath, imageLocationCell
        Exit Sub
      End If
    End If
End Sub

Puis créez votre méthode d’insertion comme suit:

Private Sub InsertPic(filePath As String, ByVal insertCell As Range)
    Dim xlShapes As Shapes
    Dim xlPic As Shape
    Dim xlWorksheet As Worksheet

    If IsEmpty(filePath) Or Len(Dir(filePath)) = 0 Then
        MsgBox ("File Path invalid")
        Exit Sub
    End If

    Set xlWorksheet = ActiveSheet

    Set xlPic = xlWorksheet.Shapes.AddPicture(filePath, msoFalse, msoCTrue, insertCell.top, insertCell.left, insertCell.width, insertCell.height)
    xlPic.LockAspectRatio = msoCTrue
End Sub
2
Daniel