How to replace text with corresponding pictures in Excel?
Let’s say, I have a list of product names in a worksheet, and there is a folder contains the corresponding pictures of the product names in the computer disk. Now, I need to find and replace the product names with their relative images in Excel without insert them one by one as following screenshots shown. Any there any good and quick solutions to deal with this job in Excel?
Insert pictures based on cell values in a column:
With Kutools for Excel’s Match Import Pictures utility, you can insert matching images based on the cell values quickly and easily.
Kutools for Excel: with more than 200 handy Excel add-ins, free to try with no limitation in 60 days. Download and free trial Now!
Normally, there is no easy and direct way for us to insert the relative pictures based on the text string in Excel, but, the following VBA code may help you to replace the text with its corresponding picture.
1. Press Alt + F11 to display the Microsoft Visual Basic for Applications window.
2. In the window, click Insert > Module to show a new module window, then copy and paste the following VBA code into the module window.
VBA code: replace text with corresponding pictures
Sub InsertPicture() 'Upadateby20150423 Dim xPath As String Dim xLastRow As Long Dim Rng As Range Dim WorkRng As Range On Error Resume Next xTitleId = "KutoolsforExcel" Set WorkRng = Application.Selection Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8) Application.ScreenUpdating = False xPath = "C:\Users\dt\Desktop\Fruits\" If Right(xPath, 1) <> "\" Then xPath = xPath & "\" xLastRow = Cells(Rows.Count, "A").End(xlUp).Row For Each Rng In WorkRng If Rng.Value <> "" Then If Dir(xPath & Rng.Value & ".jpg") <> "" Then ActiveSheet.Pictures.Insert(xPath & Rng.Value & ".jpg").Select With Selection.ShapeRange .LockAspectRatio = msoFalse .Left = Rng.Left .Top = Rng.Top .Width = Rng.Width .Height = Rng.Height End With Rng.ClearContents Else Rng.Value = "N/A" End If End If Next Application.ScreenUpdating = True End Sub
3. Then press F5 key to run this code, and select the data range that you want to insert the corresponding pictures in the popped out dialog, see screenshot:
4. And then click OK button, all the corresponding images with the size as the same as the cells will be replaced with the original text, see screenshots:
1. In the above code, you need to change the folder path of the pictures to your need, xPath = "C:\Users\dt\Desktop\Fruits\".
2. If there are no corresponding pictures to match the text, the error N/A will display.
As the above code difficult to master, here, I will introduce you an easy and powerful tool - Kutools for Excel, with its Match Import Pictures feature, you can quickly and conveniently to insert the pictures to match the list of text.
|Kutools for Excel : with more than 300 handy Excel add-ins, free to try with no limitation in 60 days.|
After installing Kutools for Excel, please do as this:
1. Click Enterprise > Import / Export > Match Import Pictures, see screenshot:
2. In the Match Import Pictures dialog box, click button to select the range that you want to match with the pictures, see screenshot:
3. Then in the Match Import Pictures dialog, click Add > File or Folder to find the pictures that you want to insert, see screenshot:
4. After inserting the corresponding images, then click Import size button, in the following Import Picture Size dialog, specify one option for the size of your picture. See screenshot:
5. Then click OK > Import, and then choose one cell to locate your relative images from the popped out Match Import Pictures dialog (you can also select the original cell of the text), see screenshot:
6. And then click OK button, all the pictures which match with the text have been inserted into the worksheet, see screenshot:
1. If there are no matched pictures with the text, the cell will not insert anything.
2. If you want to insert pictures horizontally, you can check Fill horizontally cell after cell in the Import order section.