Is There a Function to Automatically Insert Images in Excel? Latest Image Display Techniques and Alternatives Explained

If you’ve ever managed product lists, employee directories, or visual dashboards in Excel, you’ve probably asked yourself:
“Is there a formula or function in Excel that can automatically insert images instead of doing it manually one by one?”

For years, the answer was “no.”
Users had to rely on manual image placement or complex VBA scripts.

But now, with modern versions of Excel, there’s a new way — and it’s surprisingly powerful.
In this article, we’ll explore the latest Excel image display features, including the IMAGE function, how it works, its limitations, and alternative methods you can use if your Excel doesn’t support it.

By the end, you’ll know exactly how to automate image display in Excel — whether online or offline — without cluttering your files or breaking your layout.


✅ Introduction: Why Automatic Image Insertion Matters

Spreadsheets are no longer just for numbers.
In business and data reporting, visuals improve readability, engagement, and decision-making.

You might want to:

  • Display product thumbnails in a catalog
  • Show employee profile pictures
  • Include brand logos in client lists
  • Present KPIs with dynamic icons

However, manually inserting and resizing dozens (or hundreds) of images is time-consuming.
That’s why Excel’s IMAGE function is a game changer — and if it’s not available in your version, there are still several clever workarounds.


✅ What Is the IMAGE Function in Excel?

The IMAGE function is a relatively new addition to Microsoft Excel, available in Microsoft 365 and Excel for the Web.
It allows users to insert pictures directly into cells using a formula — just like you would use =SUM() or =VLOOKUP().

・Basic Syntax

=IMAGE(source, [alt_text], [sizing], [height], [width])

Here’s what each argument does:

  • source: The URL of the image (must be online).
  • alt_text: Optional description for accessibility or hover text.
  • sizing: Determines how the image fits in the cell.
  • height / width: Custom dimensions (used when sizing = 3).

・How It Works

Instead of inserting pictures manually, you can reference an image hosted online.
Excel fetches it and displays it within the cell, not floating above it.
That means you can sort, filter, and move rows — and the image stays in place like regular data.


✅ Example: Automatically Displaying Images by Formula

Imagine you have a product list like this:

Product IDProduct NameImage URL
A001Blue Penhttps://example.com/pen.png
A002Notebookhttps://example.com/book.png

Now, in the next column, enter:

=IMAGE(C2, "Product image of "&B2, 0)

This automatically inserts each product’s picture directly in the corresponding cell.

You can even combine it with lookup functions:

=IMAGE(VLOOKUP(A2, ProductTable, 3, FALSE))

When you change the product ID, the image updates instantly.

This creates a dynamic image display system — perfect for product catalogs, staff directories, and dashboards.


✅ Understanding the “Sizing” Argument

The third argument in the IMAGE function controls how the image fits inside the cell.

OptionDescription
0Fits the image inside the cell while maintaining its aspect ratio
1Fills the entire cell, ignoring aspect ratio
2Displays the image in its original size
3Custom size using the optional height and width arguments

If you want consistent layouts, the best option is 0, since it adapts automatically as you resize rows or columns.

How to Automatically Adjust Picture Size When Pasting in Excel: A Beginner-Friendly Guide


✅ What Makes the IMAGE Function So Useful

  • No manual resizing needed: Excel adjusts automatically.
  • Cell-based control: Images move with filters and sorts.
  • Dynamic updating: Combine with lookup functions for automation.
  • Cleaner design: Unlike floating images, they don’t overlap cells.
  • Lightweight: Reduces workbook clutter and maintains order.

For anyone managing reports or visual data tables, this feature saves hours of work and reduces design frustration.


✅ Limitations of the IMAGE Function

Despite its advantages, the IMAGE function has important restrictions to keep in mind.

1. It Only Works with Online Images

The function requires an internet-accessible URL starting with “https://”.
Local paths such as “C:\Users\Photos\item.jpg” are not supported.

2. No Upload Capability

Excel cannot store images uploaded from your computer through this formula.
You must host them on a website, CDN, or cloud storage with a public link.

3. Version Dependency

The feature is available in Microsoft 365 (Windows/Mac) and Excel for the Web — not in older versions like Excel 2016 or 2019.

4. Performance Issues with Large Image Sets

Embedding hundreds of high-resolution images can make your workbook heavier and slower.

5. Limited Error Handling

If the image link breaks or the source changes, the cell may show a blank or error (#CONNECT!).

Despite these drawbacks, it’s the most elegant way to automate image display — and in most modern Excel environments, it works beautifully.


✅ Alternative Methods When IMAGE Is Unavailable

If your Excel version doesn’t support the IMAGE function, or if you need offline access, there are several reliable alternatives.


・Method 1: Insert Pictures Manually and Anchor to Cells

  1. Go to the Insert tab → Pictures → This Device.
  2. Select your image file.
  3. Resize it to fit inside the cell.
  4. Right-click → Format Picture → Properties → Move and size with cells.

Now the image will stay aligned when you filter or resize.
This is the simplest and most compatible method across all Excel versions.


・Method 2: Use VBA to Automatically Insert Images from File Paths

You can automate image insertion with a macro.
If you have a list of file paths, use this VBA code:

Sub InsertImages()
Dim i As Long
Dim ws As Worksheet
Set ws = ActiveSheet
For i = 2 To ws.Cells(ws.Rows.Count, "A").End(xlUp).Row
Dim imgPath As String
imgPath = ws.Cells(i, 2).Value
If Dir(imgPath) <> "" Then
Dim shp As Shape
Set shp = ws.Shapes.AddPicture(imgPath, msoFalse, msoTrue, ws.Cells(i, 3).Left, ws.Cells(i, 3).Top, 50, 50)
shp.LockAspectRatio = msoTrue
shp.Placement = xlMoveAndSize
End If
Next i
End Sub

This script inserts an image from the file path in column B into column C.
You can adjust the size by modifying the width/height values.

This approach works offline and gives you full control — perfect for local product photos or internal systems.


・Method 3: Use “Picture in Cell” (for Newer Excel Versions)

Recent updates to Excel introduced the Insert Picture in Cell option under the Insert → Pictures menu.
Unlike traditional floating images, these are embedded directly into the cell grid.
If your Excel has this feature, you can drag and drop multiple photos, and they automatically resize to fit.


・Method 4: Linked Pictures for Dynamic Dashboards

If you want an image to update automatically based on cell content:

  1. Copy the target cell or range.
  2. Go to another cell → Home → Paste → Linked Picture.
  3. When data changes, the linked image updates in real-time.

This is great for dashboards or summary views.


・Method 5: Third-Party Add-ins or Power Automate

Add-ins like Kutools for Excel or automation tools like Power Automate can insert, resize, and manage images in bulk.
These tools are particularly useful in business settings where repetitive image operations are common.


✅ Advanced Scenarios: Combine Images with Data Automation

Once you know how to display images automatically, you can create powerful visual spreadsheets.

1. Dynamic Product Catalogs

Use the IMAGE function or a VBA macro to show product photos next to SKUs.
Combine with filters or slicers for an interactive product viewer.

2. Employee Photo Directory

Create a personnel database where photos appear automatically based on employee ID.
It’s an easy way to build an HR dashboard without web development.

3. Conditional Image Display

Pair IMAGE with IF or SWITCH functions to display specific icons based on cell values.
For example:

=IF(B2="OK", IMAGE("https://site.com/ok.png"), IMAGE("https://site.com/error.png"))

4. Automatic Image Sizing

In VBA, you can calculate row height and adjust the inserted image to fit perfectly, maintaining layout consistency.


✅ Troubleshooting Common Issues

ProblemCauseFix
#CONNECT! or blank cellImage URL not accessibleCheck HTTPS and public access
Image too large or distortedAspect ratio unlockedRight-click → Lock aspect ratio
Images move out of placeFloating objects not anchoredEnable “Move and size with cells”
Slow workbook performanceToo many high-res imagesCompress or reduce resolution
IMAGE function unavailableOlder Excel versionUse VBA or manual insertion

✅ Tips for Professional Image Management in Excel

  • Compress your images before inserting to reduce file size.
  • Use consistent sizes (e.g., 100 × 100 px) for clean layouts.
  • Store online images on a reliable CDN to prevent broken links.
  • Avoid BMP or TIFF formats — use PNG or JPEG for compatibility.
  • Protect important images by locking cells or worksheets after setup.
  • Create templates with pre-sized cells for image placeholders.

These small practices save time and prevent future formatting chaos.


✅ Comparing Methods: IMAGE vs VBA vs Manual Insertion

FeatureIMAGE FunctionVBA ScriptManual Insert
AutomationHighHighLow
Works OfflineNoYesYes
Setup DifficultyEasyModerateVery Easy
Supports Local FilesNoYesYes
Sorting & FilteringYesYesYes
Best ForDynamic online catalogsInternal offline systemsOne-time image placement

If you’re using Microsoft 365, the IMAGE function is the best balance of automation and simplicity.
Otherwise, VBA gives full control for legacy environments.


✅ Practical Example: Create an Interactive Product Viewer

Let’s walk through a mini project using modern Excel features.

  1. Create a table with columns:
    ProductID, ProductName, ImageURL, Price.
  2. Insert the IMAGE formula:
    =IMAGE([@ImageURL], "Product photo of "&[@ProductName], 0)
  3. Add a dropdown to select a product code.
  4. Use XLOOKUP to retrieve details and show the image dynamically.
  5. Format the table with consistent cell sizes.

You now have an interactive Excel product browser — all within a spreadsheet.

This kind of setup not only looks impressive but also keeps users engaged longer, which is great for page analytics and monetization.


✅ Frequently Asked Questions (FAQ)

Q1. Can Excel automatically insert local images from a folder?
Not natively — you’ll need a VBA macro for that.

Q2. Why does my image not appear using the IMAGE function?
Ensure the URL is accessible over HTTPS and doesn’t require login.

Q3. Can I use the IMAGE function offline?
No. The image source must be hosted online.

Q4. Does this work in Google Sheets too?
Yes, Google Sheets has a similar IMAGE() function — though syntax differs slightly.

Q5. Can I use conditional logic to change images automatically?
Yes. You can combine IMAGE with IF or SWITCH for status indicators or icons.


✅ Summary: Automating Image Display in Excel

To recap:

  • Yes, Excel can automatically insert images using the IMAGE() function (available in Microsoft 365 and Excel for Web).
  • It works with HTTPS URLs and supports flexible sizing options.
  • You can integrate it with lookup functions to dynamically display pictures.
  • If the IMAGE function isn’t available, use manual insertion, VBA automation, or the Insert Picture in Cell feature.
  • Always compress and anchor images properly for smooth performance.

By mastering these techniques, you’ll turn your spreadsheets into dynamic visual tools — perfect for product databases, HR dashboards, or modern business reports.

Excel is evolving beyond numbers — and with image automation, it’s becoming a true data-visualization powerhouse.


Final Tip:
If you manage spreadsheets shared across your team, build a version that uses both IMAGE (for online users) and a fallback VBA method (for offline environments).
That way, your workbook remains functional anywhere — combining automation with compatibility.

Excel Cell & Table Basics: Essential Operations for Beginners

Scroll to Top