Note: The other languages of the website are Google-translated. Back to English
Se connecter  \/ 
x
or
x
INSCRIPTION  \/ 
x

or

Comment insérer plusieurs images et les redimensionner à la fois dans Excel?

Il est facile pour nous d'insérer une image dans Excel, mais si vous devez insérer plusieurs images à la fois pour gagner du temps, comment pourriez-vous faire?


Insérez plusieurs images et redimensionnez-les en bloc grâce à la fonction Insérer une image

Nous pouvons insérer plusieurs images en vrac grâce à la fonction (Insérer) Image dans Excel, puis les redimensionner simultanément. Veuillez procéder comme suit:

1. Dans la feuille de calcul, cliquez sur insérer > Image.

2. Dans la boîte de dialogue Insérer une image, ouvrez le dossier contenant les images que vous allez insérer, sélectionnez plusieurs images selon vos besoins et cliquez sur le bouton insérer bouton. Voir la capture d'écran:
Notes: En portant Ctrl clé, vous pouvez sélectionner plusieurs images non adjacentes en cliquant dessus une par une; en portant Mission touche, vous pouvez sélectionner plusieurs images adjacentes en cliquant sur la première image et la dernière.

Désormais, les images sont insérées en vrac et empilées dans la feuille de calcul.

3. Gardez ces images sélectionnées et redimensionnez-les en bloc en entrant un nouveau numéro dans les deux Largeur et Hauteur boîtes dans le Taille groupe sur le Format languette. Voir la capture d'écran:

Désormais, toutes les images insérées sont modifiées simultanément à la même taille.

4. À l'heure actuelle, vous devez déplacer manuellement chaque image séparément vers un endroit approprié.

Notes: S'il y a des dizaines d'images qui s'empilent, il faudra beaucoup de temps pour les déplacer manuellement pour les adapter aux endroits.

Lot insérer plusieurs images correspondant au contenu des cellules dans Excel

Le Faire correspondre les images d'importation fonctionnalité de Kutools for Excel, est un outil fantastique qui peut importer et insérer par lots plusieurs images en fonction du contenu de la cellule, et redimensionner facilement les images importées de la même manière que la taille de la cellule ou à la taille spécifiée. Essai gratuit complet de 30 jours!
ad match images importées 01

Kutools pour Excel - Comprend plus de 300 outils pratiques pour Excel. Essai gratuit complet de 30 jours, aucune carte de crédit requise! Achetez-le Maintenant

Insérez plusieurs images et redimensionnez-les en masse avec OneNote

Pour éviter de déplacer les images d'empilement une par une, cette méthode présente une autre astuce pour insérer plusieurs images à l'aide de OneNote. Veuillez procéder comme suit:

1. Lancez OneNote et créez une nouvelle page. Et puis cliquez insérer > Image.

2. Dans la boîte de dialogue Insérer une image, ouvrez le dossier contenant les images que vous allez insérer, sélectionnez plusieurs images selon vos besoins et cliquez sur le bouton insérer bouton. Voir la capture d'écran:
Notes: En portant Ctrl clé, vous pouvez sélectionner plusieurs images non adjacentes en cliquant dessus une par une; en portant Mission touche, vous pouvez sélectionner plusieurs images adjacentes en cliquant sur la première image et la dernière.

doc insérer plusieurs images OneNote 032

3. presse Ctrl + A pour sélectionner toutes les images insérées dans OneNote, puis appuyez sur Ctrl + C clés pour les copier.

4. Accédez à la feuille de calcul dans Excel et appuyez sur Ctrl + V touches pour coller les images dans la feuille de calcul. Maintenant, toutes les images sont collées verticalement comme illustré à gauche.

5. Sélectionnez l'une des images et appuyez sur Ctrl + A pour les sélectionner tous. Puis redimensionnez les images en vrac en entrant de nouveaux nombres dans les deux Largeur et Hauteur boîtes dans le Taille groupe sur le Format languette. Voir la capture d'écran:

Maintenant, toutes les images spécifiées sont insérées dans Excel et redimensionnées à la même taille en vrac.


Insérez plusieurs images dans Excel avec le code VBA

Avec le code VBA suivant, vous pouvez insérer plusieurs images dans un fichier Excel cellule par cellule.

1. Sélectionnez la première cellule de la plage de destination dans laquelle vous souhaitez insérer des images.

2. Maintenez le ALT + F11 clés, et il ouvre le Microsoft Visual Basic pour applications fenêtre.

3. Cliquez insérer > Moduleet collez la macro suivante dans le Fenêtre du module.

Sub InsertPictures()
'Update 20140513
Dim PicList() As Variant
Dim PicFormat As String
Dim Rng As Range
Dim sShape As Shape
On Error Resume Next
PicList = Application.GetOpenFilename(PicFormat, MultiSelect:=True)
xColIndex = Application.ActiveCell.Column
If IsArray(PicList) Then
    xRowIndex = Application.ActiveCell.Row
    For lLoop = LBound(PicList) To UBound(PicList)
        Set Rng = Cells(xRowIndex, xColIndex)
        Set sShape = ActiveSheet.Shapes.AddPicture(PicList(lLoop), msoFalse, msoCTrue, Rng.Left, Rng.Top, Rng.Width, Rng.Height)
        xRowIndex = xRowIndex + 1
    Next
End If
End Sub

4. Puis appuyez sur F5 clé pour exécuter ce code.

5. Dans la boîte de dialogue Ouvrir, veuillez ouvrir le dossier qui contient les images que vous souhaitez insérer, sélectionnez plusieurs images que vous allez insérer et cliquez sur le bouton Open bouton. Et toutes les images sélectionnées ont été importées dans votre sélection en fonction de la taille de la cellule. Voir la capture d'écran:


Insérez plusieurs images et ajustez-les automatiquement avec Kutools for Excel

Kutools pour Excel's Importer des images L'utilitaire peut vous aider à insérer rapidement plusieurs images dans Excel en fonction de la taille de la cellule ou de la taille de l'image. Vous pouvez également spécifier la hauteur et la largeur des images selon vos besoins.

Kutools pour Excel - Comprend plus de 300 outils pratiques pour Excel. Essai gratuit complet de 30 jours, aucune carte de crédit requise! Achetez-le Maintenant

1. Cliquez Kutools Plus > Import / Export > Importer des images, voir capture d'écran:

2. Dans le Importer des images boîte de dialogue, procédez comme suit:
(1) Spécifiez l'ordre d'affichage des images à partir du Commande d'importation liste déroulante, vous pouvez choisir Remplir verticalement cellule après cellule or Remplir horizontalement cellule après cellule.
(2) Cliquez sur Add pour sélectionner les fichiers image ou le dossier pour ajouter les images dans la liste Image. Et toutes vos images sélectionnées seront répertoriées dans la zone de liste.
(3) Cliquez sur le Importer la taille bouton;

3. Maintenant dans le Importer la taille de l'image dialogue, vous pouvez choisir la taille de l'image correspondant à vos besoins. Voir la capture d'écran:

4. Après avoir spécifié la taille de l'image, veuillez cliquer OK pour fermer cette boîte de dialogue et revenir à la Importer des images dialogue, cliquez sur L’ bouton pour importer les images.

5. Dans la nouvelle boîte de dialogue Importer des images, choisissez la première cellule de la plage de destination dans laquelle vous allez insérer des images, puis cliquez sur le bouton OK .

À l'heure actuelle, toutes vos images sélectionnées ont été insérées dans vos cellules à partir de la cellule active verticalement ou horizontalement. Voir la capture d'écran de droite:

Le Importer des images La fonctionnalité de Kutools for Excel est conçue pour insérer un lot d'images simultanément avec la taille de cellule correspondante, la taille spécifiée ou les propres tailles des images dans Excel. Faites un essai gratuit!


Insérez plusieurs images correspondant à leurs noms avec Kutools for Excel

Kutools for Excel prend également en charge un dramatique Faire correspondre les images d'importation fonction pour faire correspondre les images et le contenu des cellules et insérer des images correspondantes uniquement en vrac dans Excel.

Kutools pour Excel - Comprend plus de 300 outils pratiques pour Excel. Essai gratuit complet de 30 jours, aucune carte de crédit requise! Achetez-le Maintenant

1. Sélectionnez les cellules de nom de l'image dans lesquelles vous souhaitez insérer les images correspondantes, puis cliquez sur Kutools Plus > Import / Export > Faire correspondre les images d'importation. voir capture d'écran:

2. Dans la boîte de dialogue Faire correspondre les images d'importation, procédez comme suit:
(1) Spécifiez l'ordre d'affichage des images à partir du Commande d'importation la liste déroulante;
(2) Cliquez sur Add pour ajouter les images à la zone de liste d'images. Pour votre information, seules les images correspondantes seront répertoriées.
(3) Cliquez ensuite sur Importer la taille .

3. Maintenant dans le Importer la taille de l'image , vous pouvez choisir la taille de l'image correspondant à vos besoins, et cliquer sur le Ok bouton. Voir la capture d'écran:

4. Maintenant, vous revenez au Importer des images dialogue, cliquez sur L’ bouton pour importer les images.

5. Dans la boîte de dialogue Faire correspondre les images d'importation, veuillez spécifier la première cellule de la plage de destination dans laquelle vous allez insérer des images, puis cliquez sur le bouton OK bouton. Voir la capture d'écran:

Jusqu'à présent, toutes les images sont insérées dans les cellules en fonction de leurs noms relatifs. Voir la capture d'écran de droite:

Le Faire correspondre les images d'importation La fonctionnalité de Kutools for Excel peut aider les utilisateurs d'Excel à filtrer rapidement les images en fonction des valeurs de cellule, puis à insérer ces images en vrac. En outre, ces images correspondantes peuvent être redimensionnées automatiquement à la taille spécifiée ou à la taille de cellule. Faites un essai gratuit!


Démo: insérez plusieurs images et redimensionnez-les à la fois dans Excel

Kutools pour Excel comprend plus de 300 outils pratiques pour Excel, gratuits à essayer sans limitation en 30 jours. Essai gratuit maintenant!      Acheter!


Articles connexes


Les meilleurs outils de productivité de bureau

Kutools for Excel résout la plupart de vos problèmes et augmente votre productivité de 80%

  • Réutilisation: Insérer rapidement formules complexes, graphiques et tout ce que vous avez utilisé auparavant; Crypter les cellules avec mot de passe; Créer une liste de diffusion et envoyer des e-mails ...
  • Barre Super Formula (modifiez facilement plusieurs lignes de texte et de formule); Disposition de lecture (lire et modifier facilement un grand nombre de cellules); Coller dans la plage filtrée...
  • Fusionner les cellules / lignes / colonnes sans perdre de données; Contenu des cellules divisées; Combiner des lignes / colonnes en double... Empêcher les cellules en double; Comparer les gammes...
  • Sélectionnez Dupliquer ou Unique Lignes; Sélectionnez les lignes vides (toutes les cellules sont vides); Super Find et Fuzzy Find dans de nombreux classeurs; Sélection aléatoire ...
  • Copie exacte Plusieurs cellules sans changer la référence de formule; Créer automatiquement des références à plusieurs feuilles; Insérer des puces, Cases à cocher et plus encore ...
  • Extrait du texte, Ajouter du texte, Supprimer par position, Supprimer l'espace; Créer et imprimer des sous-totaux de pagination; Conversion entre le contenu et les commentaires des cellules...
  • Super filtre (enregistrer et appliquer des schémas de filtrage à d'autres feuilles); Tri avancé par mois / semaine / jour, fréquence et plus; Filtre spécial par gras, italique ...
  • Combiner des classeurs et des feuilles de travail; Fusionner les tableaux en fonction des colonnes clés; Diviser les données en plusieurs feuilles; Conversion par lots xls, xlsx et PDF...
  • Plus de 300 fonctionnalités puissantes. Prend en charge Office / Excel 2007-2019 et 365. Prend en charge toutes les langues. Déploiement facile dans votre entreprise ou organisation. Essai gratuit de 30 jours. Garantie de remboursement de 60 jours.
onglet kte 201905

Office Tab apporte une interface à onglets à Office et simplifie considérablement votre travail

  • Activer l'édition et la lecture par onglets dans Word, Excel, PowerPoint, Publisher, Access, Visio et Project.
  • Ouvrez et créez plusieurs documents dans de nouveaux onglets de la même fenêtre, plutôt que dans de nouvelles fenêtres.
  • Augmente votre productivité de 50% et réduit des centaines de clics de souris chaque jour!
bas de cabine
Say something here...
symbols left.
You are guest
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.
  • To post as a guest, your comment is unpublished.
    chenhinhexcel · 6 months ago
    mình cảm ơn vì bài viết. mình có làm danh sách sản phẩm hàng hóa mất rất nhiều thời gian nhưng chợt thấy chenanhexcel.com có bán add-in thì công việc của mình dễ dàng hơn nhiều. 
  • To post as a guest, your comment is unpublished.
    vind · 1 years ago
    Hi, i have 10 images i want to insert all 10 inside ONE CELL in excel. is this possible and if so pls help me out with some code pls...
    • To post as a guest, your comment is unpublished.
      kellytte · 1 years ago
      Hi Vind,
      First, adjust the cell and make it big enough to contain the 10 images.
      Then Click Insert > Picture to open the Insert Picture dialog. In the dialog, select the 10 images together (if they are in the same folder), and click the OK button.
      Now all images are inserted. If necessary, resize them simultaneously in the Size group on the Picture Format tab.
      These images are inserted in the diagonal line of the cell as attached picture, and you need to adjust their positions manually.
  • To post as a guest, your comment is unpublished.
    jlkiv80 · 2 years ago
    I am using the following code, which came from Funzone, to add my photos but i need to be able to skip a column, leaving a blank column between photos, can someone help?

    Sub InsertPictures()
    Dim PicList() As Variant
    Dim PicFormat As String
    Dim Rng As Range
    Dim sShape As Shape
    On Error Resume Next
    PicList = Application.GetOpenFilename(PicFormat, MultiSelect:=True)

    xColIndex = Application.ActiveCell.Column
    xRowIndex = Application.ActiveCell.Row

    If IsArray(PicList) Then

    For lLoop = LBound(PicList) To UBound(PicList)
    Set Rng = Cells(xRowIndex, xColIndex)
    Set sShape = ActiveSheet.Shapes.AddPicture(PicList(lLoop), msoFalse, msoCTrue, Rng.Left, Rng.Top, Rng.Width, Rng.Height)
    xColIndex = xColIndex + 1
    If xColIndex = 4 Then GoTo Continue1 Else GoTo Continue2

    Continue1:
    xRowIndex = xRowIndex + 2
    xColIndex = xColIndex - 3

    Continue2:
    Next
    End If
    End Sub
  • To post as a guest, your comment is unpublished.
    Funzone13 · 2 years ago
    I was finally able to figure it out on my own.

    The code below will insert 3 pictures horizontally in the columns then move down a row and insert 3 more horizontally it will repeat this process until it runs out of the selected pictures.



    Sub InsertPictures()
    Dim PicList() As Variant
    Dim PicFormat As String
    Dim Rng As Range
    Dim sShape As Shape
    On Error Resume Next
    PicList = Application.GetOpenFilename(PicFormat, MultiSelect:=True)

    xColIndex = Application.ActiveCell.Column
    xRowIndex = Application.ActiveCell.Row

    If IsArray(PicList) Then

    For lLoop = LBound(PicList) To UBound(PicList)
    Set Rng = Cells(xRowIndex, xColIndex)
    Set sShape = ActiveSheet.Shapes.AddPicture(PicList(lLoop), msoFalse, msoCTrue, Rng.Left, Rng.Top, Rng.Width, Rng.Height)
    xColIndex = xColIndex + 1
    If xColIndex = 4 Then GoTo Continue1 Else GoTo Continue2

    Continue1:
    xRowIndex = xRowIndex + 1
    xColIndex = xColIndex - 3

    Continue2:
    Next
    End If
    End Sub
  • To post as a guest, your comment is unpublished.
    Funzone13 · 2 years ago
    I would really like to use this VBA code to fill an array of cells with picture like 5 across then move to next row and 5 across until you run out of selected pictures but I just can't wrap my head around how to do it. Is this at all possible?


    If you know how to do this please post the code. Thank you In advance!

    Similar to https://www.extendoffice.com/documents/excel/3360-excel-transpose-every-5-rows.html
    except by selecting pictures and pasting the output in an array.
  • To post as a guest, your comment is unpublished.
    Funzone13 · 2 years ago
    I would really like to use this VBA code to fill an array of cells with picture like 5 across then move to next row and 5 across until you run out of selected pictures but I just can't wrap my head around how to do it. Is this at all possible?

    Similar to https://www.extendoffice.com/documents/excel/3360-excel-transpose-every-5-rows.html
    except by selecting pictures and pasting the output in an array
  • To post as a guest, your comment is unpublished.
    David · 2 years ago
    les agradezco mucho realmente ayudan muchisimo con el trabajo y el tiempo. Me sirvio perfecto para un inventario con fotos.
    reitero mi agradecimiento
  • To post as a guest, your comment is unpublished.
    gedc2003@yahoo.com · 2 years ago
    Tried this code and in all honesty is amazing and fast, however is there any chance of amending this to make it resize the pictures to a custom size.
    I cannot seem to get my head around it.
    Thanks
  • To post as a guest, your comment is unpublished.
    Drew Reyes · 2 years ago
    you are a legend
  • To post as a guest, your comment is unpublished.
    Marco Itaborahy · 3 years ago
    Muito Obrigado, foi muito útil.
  • To post as a guest, your comment is unpublished.
    Nael · 3 years ago
    Quality of pictures is reduced when using the Code while its quality was good when adding it without the macro
  • To post as a guest, your comment is unpublished.
    vincentwky92@gmail.com · 3 years ago
    How about adding the fit picture but maintain aspect ratio
    having trouble merging the following code:


    Public Sub FitPic()
    On Error GoTo NOT_SHAPE
    Dim PicWtoHRatio As Single
    Dim CellWtoHRatio As Single
    With Selection
    PicWtoHRatio = .Width / .Height
    End With
    With Selection.TopLeftCell
    CellWtoHRatio = .Width / .RowHeight
    End With
    Select Case PicWtoHRatio / CellWtoHRatio
    Case Is > 1
    With Selection
    .Width = .TopLeftCell.Width
    .Height = .Width / PicWtoHRatio
    End With
    Case Else
    With Selection
    .Height = .TopLeftCell.RowHeight
    .Width = .Height * PicWtoHRatio
    End With
    End Select
    With Selection
    .Top = .TopLeftCell.Top
    .Left = .TopLeftCell.Left
    End With
    Exit Sub
    NOT_SHAPE:
    MsgBox "Select a picture before running this macro."
    End Sub
  • To post as a guest, your comment is unpublished.
    SHAHBAZ · 3 years ago
    How can I modify the following code so that pictures are INSERT A1,B1,C1,D1
    PLEASE HELP
    • To post as a guest, your comment is unpublished.
      yam · 3 years ago
      Try this.
      ...

      On Error Resume Next
      PicList = Application.GetOpenFilename(PicFormat, MultiSelect:=True)
      xColIndex = Application.ActiveCell.Column
      If IsArray(PicList) Then
      xRowIndex = Application.ActiveCell.Row
      For lLoop = LBound(PicList) To UBound(PicList)
      Set Rng = Cells(xRowIndex, xColIndex)
      Set sShape = ActiveSheet.Shapes.AddPicture(PicList(lLoop), msoFalse, msoCTrue, Rng.Left, Rng.Top, Rng.Width , Rng.Height )
      xColIndex = xColIndex
      Next

      ...
  • To post as a guest, your comment is unpublished.
    Javi · 3 years ago
    Amazing! Thank you!!
  • To post as a guest, your comment is unpublished.
    Mark · 4 years ago
    With the VBA how would I pull in an "image" that has multiple pages. In my example I am working with TIF files.
  • To post as a guest, your comment is unpublished.
    aloko · 4 years ago
    Hi
    good work
    but i face one problem
    this VBE code just work for normal cells
    can you modify it for merged cells
    you help is appreciated
  • To post as a guest, your comment is unpublished.
    Jason · 4 years ago
    How can I modify the following code so that pictures are populated in a selected range of cells across multiple columns and rows rather than in consecutive cells in successive rows in the same column?

    Sub InsertPictures()
    'Update 20140513
    Dim PicList() As Variant
    Dim PicFormat As String
    Dim Rng As Range
    Dim sShape As Shape
    On Error Resume Next
    PicList = Application.Get OpenFilename(Pi cFormat, MultiSelect:=True)
    xColIndex = Application.ActiveCell.Column
    If IsArray(PicList ) Then
    xRowIndex = Application.Act iveCell.Row
    For lLoop = LBound(PicList) To UBound(PicList)
    Set Rng = Cells(xRowIndex , xColIndex)
    Set sShape = ActiveSheet.Sha pes.AddPicture( PicList(lLoop), msoFalse, msoCTrue, Rng.Left, Rng.Top, Rng.Width, Rng.Height)
    xRowIndex = xRowIndex + 1
    Next
    End If
    End Sub
    • To post as a guest, your comment is unpublished.
      Lucas Ricardo · 2 years ago
      Alguem conseguiu o codigo para a pergunta dele? estou precisando também!
  • To post as a guest, your comment is unpublished.
    Mitch · 4 years ago
    This code ALMOST works for my needs. I have 200 images, each image needs to go on it's own sheet. How do I go about that?
  • To post as a guest, your comment is unpublished.
    Divya · 4 years ago
    Hey,

    Ive inserted the pictures using my own VBE code. And now I've tried to share it with the others, unfortunately they are not able to see the pictures..... I would be grateful if anyone could tell me what am I missing.

    Thanks
  • To post as a guest, your comment is unpublished.
    Rich · 4 years ago
    Hey all,

    This is great! I have been following your tutorials for some time now.

    What I was hoping you could help me with is, how do I change this from sticking the images down a column to across a row?

    And how can I add the "Full File Name (i.e. example_image.jpg)" to the Row above it.

    Row 'A' : "Filename.jpg"
    Row 'B' : "Image Thumbnail"

    Thanks!!
  • To post as a guest, your comment is unpublished.
    Puru · 5 years ago
    Using below VBA program cant insert the picture in merged cell,

    Sub InsertPictures()
    'Update 20140513
    Dim PicList() As Variant
    Dim PicFormat As String
    Dim Rng As Range
    Dim sShape As Shape
    On Error Resume Next
    PicList = Application.Get OpenFilename(Pi cFormat, MultiSelect:=True)
    xColIndex = Application.ActiveCell.Column
    If IsArray(PicList ) Then
    xRowIndex = Application.Act iveCell.Row
    For lLoop = LBound(PicList) To UBound(PicList)
    Set Rng = Cells(xRowIndex , xColIndex)
    Set sShape = ActiveSheet.Sha pes.AddPicture( PicList(lLoop), msoFalse, msoCTrue, Rng.Left, Rng.Top, Rng.Width, Rng.Height)
    xRowIndex = xRowIndex + 1
    Next
    End If
    End Sub

    Please advice me to modify the VBA.
  • To post as a guest, your comment is unpublished.
    Saintimnot · 5 years ago
    Hi, I tried the code on my spreadsheet and it worked perfect. Till I try to do filter. Find that the last picture will always be shown on filter result. anyone able to help?
  • To post as a guest, your comment is unpublished.
    Muhammad Ali · 5 years ago
    it is very help ful me.
    It's so nice work.......
    Thanks
  • To post as a guest, your comment is unpublished.
    Gilberto · 5 years ago
    Hello!
    Any reason why "Sub InsertPictures()" would not work in Excel 2003?
    I have already added the reference to Microsoft.Scripting.Runtime

    Thanks in advance

    Gilberto
  • To post as a guest, your comment is unpublished.
    Karlo · 5 years ago
    [quote name="Armin"]or you use directly image-xls . with this Excel addin you're able to insert unlimited number of Pictures into Excel cell, or as a comment. it also resizes your Pictures. and it's possible to order and filter your Excel sheet, including the Pictures ![/quote]
    [quote name="Rahul Gupta"]The instructions with the heading : Insert multiple pictures into Excel with VBA code is simply awesome quick and effective !!! this is a good alternative to buy and install plugins.
    This is my first comment online !!
    kudos ![/quote]

    i tried this and seems to work fine - but you can't order or filter the Excel list including the pics. also the pics are not scaled proportional . so i bought image-xls - cost a bit , but does all i need
  • To post as a guest, your comment is unpublished.
    AJu · 5 years ago
    I am Mac user and once i copied the code into the new module and run it nothing happens. Is there something i have to do in mac in order to run the VBA code?
    Thanks
  • To post as a guest, your comment is unpublished.
    Armin · 5 years ago
    or you use directly image-xls . with this Excel addin you're able to insert unlimited number of Pictures into Excel cell, or as a comment. it also resizes your Pictures. and it's possible to order and filter your Excel sheet, including the Pictures !
  • To post as a guest, your comment is unpublished.
    edward · 6 years ago
    Hi EXcel Masters,

    I have 2 excel sheets. One with more than hundred Pictures and description of the picture in the next cell to it.

    The other sheet after selection probably left with 40 description of it. How can i transfer the pictures to this sheet as per my selection.

    Thanks al
  • To post as a guest, your comment is unpublished.
    Hadrian · 6 years ago
    Thanks a lot, it works
  • To post as a guest, your comment is unpublished.
    Eklezys · 6 years ago
    Is it possible to modify that vba code to insert 4 pictures in a grid-like patern like this: pic1 in A1, pic2 in A2, pic3 in B1 and pic4 in B2?
    Tanks!
    • To post as a guest, your comment is unpublished.
      Ali · 6 years ago
      select the cells and resize them by width and height as per ur needs..
      if you have ten pics select ten cells or more the select more..!!

      then press Alt+F11
      then click INSERT
      THEN click MODULE
      THEN PASTE THE FOLLOWING CODE AS IT IS..
      Sub InsertPictures()
      'Update 20140513
      Dim PicList() As Variant
      Dim PicFormat As String
      Dim Rng As Range
      Dim sShape As Shape
      On Error Resume Next
      PicList = Application.GetOpenFilename(PicFormat, MultiSelect:=True)
      xColIndex = Application.ActiveCell.Column
      If IsArray(PicList) Then
      xRowIndex = Application.ActiveCell.Row
      For lLoop = LBound(PicList) To UBound(PicList)
      Set Rng = Cells(xRowIndex, xColIndex)
      Set sShape = ActiveSheet.Shapes.AddPicture(PicList(lLoop), msoFalse, msoCTrue, Rng.Left, Rng.Top, Rng.Width, Rng.Height)
      xRowIndex = xRowIndex + 1
      Next
      End If
      End Sub

      AFTER THE ABOVE CODE PRESS F5 ..
      THEN SELECT THE FILES FROM THE COMPUTER WHERE EVER THEY ARE. UPTO UR NEED.
      THEN IF U NOT SAVED THE WORKBOOK THEN IT WILL ASK TO SAVE IT. IF U ALREADY SAVED IT . THEN UR JOB IS HOPE THIS HELPS..
      Ali..!!
    • To post as a guest, your comment is unpublished.
      Ali · 6 years ago
      Sub InsertPictures()
      'Update 20140513
      Dim PicList() As Variant
      Dim PicFormat As String
      Dim Rng As Range
      Dim sShape As Shape
      On Error Resume Next
      PicList = Application.GetOpenFilename(PicFormat, MultiSelect:=True)
      xColIndex = Application.ActiveCell.Column
      If IsArray(PicList) Then
      xRowIndex = Application.ActiveCell.Row
      For lLoop = LBound(PicList) To UBound(PicList)
      Set Rng = Cells(xRowIndex, xColIndex)
      Set sShape = ActiveSheet.Shapes.AddPicture(PicList(lLoop), msoFalse, msoCTrue, Rng.Left, Rng.Top, Rng.Width, Rng.Height)
      xRowIndex = xRowIndex + 1
      Next
      End If
      End Sub
      • To post as a guest, your comment is unpublished.
        Puru · 5 years ago
        Could you please help me to modify the code to insert the merged column and row.

        Sub InsertPictures()
        'Update 20140513
        Dim PicList() As Variant
        Dim PicFormat As String
        Dim Rng As Range
        Dim sShape As Shape
        On Error Resume Next
        PicList = Application.Get OpenFilename(Pi cFormat, MultiSelect:=True)
        xColIndex = Application.ActiveCell.Column
        If IsArray(PicList ) Then
        xRowIndex = Application.Act iveCell.Row
        For lLoop = LBound(PicList) To UBound(PicList)
        Set Rng = Cells(xRowIndex , xColIndex)
        Set sShape = ActiveSheet.Sha pes.AddPicture( PicList(lLoop), msoFalse, msoCTrue, Rng.Left, Rng.Top, Rng.Width, Rng.Height)
        xRowIndex = xRowIndex + 1
        Next
        End If
        End Sub
    • To post as a guest, your comment is unpublished.
      Eklezys · 6 years ago
      nevermind i found how to do It :)
      • To post as a guest, your comment is unpublished.
        please help · 6 years ago
        Hi, Could you please share the modified code?
  • To post as a guest, your comment is unpublished.
    TomW · 6 years ago
    Is there a version of Kuttools for Mac?
  • To post as a guest, your comment is unpublished.
    Ram · 7 years ago
    Great Post!
    But i got other ways of doing same thing.....
    ================================================
    Sub ipic()

    Dim i As Integer
    For i = 2 To 10

    Cells(i, 1).Select
    Dim picname As String
    picname = Cells(i, 2)

    ActiveSheet.Pictures.Insert("F:\Ram-PC\Macro\MyImage\" & picname & ".jpg").Select

    With Selection
    .Left = ActiveCell.Left
    .Top = ActiveCell.Top
    .ShapeRange.LockAspectRatio = msoFalse
    .ShapeRange.Height = 34#
    .ShapeRange.Width = 80#
    End With

    Next
    Range("a1").Select

    End Sub
  • To post as a guest, your comment is unpublished.
    kapil · 7 years ago
    good support for Excel.....you gyus are really helping in saving time.
    thanks
  • To post as a guest, your comment is unpublished.
    Kirtan Patel · 7 years ago
    In the first topic "Insert multiple pictures into Excel with VBA code", how do insert one picture in two cells. for example, first picture will be inserted into cell A1 and A2, second picture will be inserted into cell A3 and A4 and so on.
  • To post as a guest, your comment is unpublished.
    Lawrence · 7 years ago
    Hi,

    I am able to use the InsertPictures module and works properly as far as jpg. It doesn't want to work for PNG though.

    Can you please advise?

    Regards,
    Lawrence
  • To post as a guest, your comment is unpublished.
    Rahul Gupta · 7 years ago
    The instructions with the heading : Insert multiple pictures into Excel with VBA code is simply awesome quick and effective !!! this is a good alternative to buy and install plugins.
    This is my first comment online !!
    kudos !