如何在Excel中使用VBA将图片插入单元格

您可以轻松地将图像插入 Excel 电子表格并使用宏代码对其进行编辑。以下是如何在 Excel 中使用 VBA 将图片插入单元格

如何在Excel中使用VBA将图片插入单元格

Visual Basic for Applications 缩写为 VBA,是集成到 Microsoft Office 程序中的 Visual Basic 6 的一种形式。通过编码,VBA 允许您自动执行 Office 应用程序(包括 Excel)中的任务。在某些情况下,您甚至可以使用 VBA 向 Excel 添加新功能。

尽管您需要编写代码才能使用 VBA,但这并不意味着 VBA 充满了字母和数字。使用 Excel 中的 VBA,您可以创建一个宏,允许您将图片插入到一个单元格或单元格区域中。以下是有关使用 VBA 将图片插入 Excel 单元格时需要了解的信息。

如何在Excel中使用VBA将图片插入单元格

要使用 VBA 创建将图片插入 Excel 单元格的宏,您实际上不需要任何高级 Visual Basic 知识。您需要做的就是打开开发人员工具,创建宏,然后粘贴适当的代码。当然,您也可以不使用VBA将图像插入Excel。然而,在本文中,我们将重点关注 VBA。

1.打开开发者工具

要在 Excel 中使用 VBA,您需要启用 Developer 工具。此操作将启用功能区中的“开发人员”选项卡,该选项卡默认情况下处于禁用状态。

  1. 打开Excel
  2. 转到“文件”菜单。
  3. 单击屏幕底部的选项。将出现“Excel 选项”窗口。
  4. 在 Excel 选项中,转到自定义功能区选项卡。
  5. 主选项卡中,选中“开发人员”

如何在Excel中使用VBA将图片插入单元格

现在,开发人员工具(包括 VBA 访问)已启用。您无需每次想要在 Excel 中使用 VBA 时都执行此操作。开发人员工具将始终处于启用状态,直到您禁用它们为止。

2. 创建宏并插入代码

  1. 在 Excel 中,转到“开发人员”选项卡。
  2. 在“代码”部分中,选择“宏”
  3. 在新窗口中,在宏名称中输入您的宏名称。本文将使用insertPhotoMacro
  4. 单击创建

如何在Excel中使用VBA将图片插入单元格

单击“创建”后,VBA 窗口将打开并显示宏的代码。目前,该代码将由 2 行组成:用于启动宏的Sub和用于结束宏的 End Sub 。

如何在Excel中使用VBA将图片插入单元格

向该宏添加一些代码。在两行之间添加以下代码行:

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

最终代码如下所示:

如何在Excel中使用VBA将图片插入单元格

您无需担心保存此过程。您在 VBA 中所做的任何更改都会立即保存。

现在是时候看看代码的实际效果了:

  1. 关闭 VBA 窗口。
  2. 转到 Excel 中的“开发人员”选项卡。
  3. 从代码部分选择宏。
  4. 突出显示您刚刚创建的宏。
  5. 单击运行

现在将打开一条消息,要求您找到要插入的图像文件。选择照片,然后单击“打开”。您现在将在单元格 A1 中看到该图像。

请注意,Excel 会缩小图像以适合单元格 A1。您可以更改它并更改代码以将图像插入其他单元格,甚至是单元格范围。下一节,我们将分离代码并解释参数。

3. 拆分代码

为了让 VBA 代码按照您想要的方式工作,您需要理解它。执行此操作时,您可以更改代码以将图像插入任何尺寸的任何单元格中。

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

当代码开始时,Dim 语句用于确定变量类型。我们有两种变量类型:photoNameAndPathphoto。首先是变量,然后是图像。

从那里,photoNameAndPath变量运行,它将打开一个应用程序来获取照片文件的位置。这是通过Application.GetOpenFileName完成的。标题参数是可选的。其中的内容显示为窗口名称。

使用If photoNameAndPath = False then Exit Sub,如果给出了无效或空地址,则该过程将结束。但是,如果提供了合适的文件,Set photo = ActiveSheet.Pictures.Insert(photoNameAndPath)指示应将图片设置为最初定义的变量。它将被插入到活动工作表中。

最后,使用 With photo 及其后面的 5 行来确定照片的位置。.Left.Top指的是起始位置,而.Width.Height指的是结束位置。如果您打算将图像插入另一个单元格或范围,这些是您应该更改的行。

.Placement 表示图片应调整大小以适合单元格或自由插入。将其设置为1将根据单元格调整其大小。

最后,上面的代码使用End With,然后End Sub来关闭宏。现在您可以将变量photoNameAndPathphoto更改为您喜欢的任何其他名称。只需记住在整个代码中保持名称一致即可。

以上是如何使用VBA将图像插入Excel的单元格中。希望这篇文章对您有用。

Leave a Comment

如何修復 Microsoft Edge TPM 認證錯誤

如何修復 Microsoft Edge TPM 認證錯誤

還在為 Microsoft Edge 瀏覽器 TPM 認證錯誤而煩惱嗎?我們提供簡單易懂的 TPM 錯誤修復方案,幫助您輕鬆解決 Edge 中的 TPM 錯誤。使用我們最新且經過測試的解決方案,即可恢復流暢的上網體驗。無需任何技術技能!

如何在 Microsoft Edge 中安裝 Chrome 擴充功能 (2026)

如何在 Microsoft Edge 中安裝 Chrome 擴充功能 (2026)

在 Microsoft Edge 中解鎖 Chrome 擴充功能的全部功能!按照這份簡單的 2026 年指南,輕鬆安裝您喜愛的擴充程序,大幅提升您的瀏覽體驗。無需任何技術技能!

如何在 Microsoft Edge 中啟用 IE 模式以相容舊版網站

如何在 Microsoft Edge 中啟用 IE 模式以相容舊版網站

輕鬆掌握如何在 Microsoft Edge 中啟用 IE 模式。使用這份簡單易懂的分步指南,修復與舊版網站的兼容性問題,無縫存取舊版內容。立即提升您的工作效率!

如何在退出時自動清除 Microsoft Edge 數據

如何在退出時自動清除 Microsoft Edge 數據

了解如何在退出時自動清除 Microsoft Edge 數據,實現極致隱私保護。請依照我們的簡易指南操作,即可在每次關閉瀏覽器時清除瀏覽紀錄、Cookie 等資訊。立即提升安全!

如何修復 Microsoft Edge 桌布引擎衝突

如何修復 Microsoft Edge 桌布引擎衝突

還在為 Microsoft Edge 瀏覽器搭配 Wallpaper Engine 壁紙引擎時崩潰而煩惱嗎?按照我們的逐步指南,快速解決 Microsoft Edge 與 Wallpaper Engine 的衝突。我們提供行之有效的解決方案,確保流暢瀏覽和精美桌布。

解決 Microsoft Edge Hsts 攻擊警告(2026)

解決 Microsoft Edge Hsts 攻擊警告(2026)

還在為 Microsoft Edge 的 HSTS 攻擊警告而煩惱嗎?取得 2026 年終極修復方案,其中包含逐步指南,可快速解決此令人頭痛的安全警報。清除快取、重置設置,確保安全!

如何修復 Microsoft Edge 瀏覽器視訊音訊不同步的問題

如何修復 Microsoft Edge 瀏覽器視訊音訊不同步的問題

還在為 Microsoft Edge 網頁影片的音畫不同步而煩惱嗎?立即取得完美音畫同步解決方案。我們提供逐步指南,其中包含經實踐驗證的有效方法,可解決 YouTube 和 Netflix 等網站上的卡頓、延遲和不同步問題。

解決 Microsoft Edge Windows 沙盒錯誤

解決 Microsoft Edge Windows 沙盒錯誤

遇到 Microsoft Edge Windows 沙盒錯誤?查看逐步故障排除修復方案,快速解決問題。立即啟用功能、更新設定並恢復流暢瀏覽體驗!

如何修復 Microsoft Edge 工作列圖示重疊問題

如何修復 Microsoft Edge 工作列圖示重疊問題

厭倦了 Microsoft Edge 工作列圖示重疊,讓螢幕看起來雜亂無章?按照我們經過驗證的分步修復方法,即可輕鬆打造整潔的工作列。這些快速解決方案適用於最新版本的 Edge,無需任何技術技能!

排查 Microsoft Edge 多 GPU 透明度問題

排查 Microsoft Edge 多 GPU 透明度問題

透過逐步修復方案,正面解決 Microsoft Edge 透明度多 GPU 問題。輕鬆恢復雙 NVIDIA/Intel 設定下流暢、清楚的標籤頁和特效。

如何修復 Microsoft Edge 更新錯誤 0x80073712

如何修復 Microsoft Edge 更新錯誤 0x80073712

遇到 Microsoft Edge 更新錯誤 0x80073712?了解如何透過 SFC 掃描、DISM 修復和 Edge 重置等逐步修復方法快速解決問題。無需任何技術技能!

如何修復 Microsoft Edge 列印時出現的腳本錯誤

如何修復 Microsoft Edge 列印時出現的腳本錯誤

還在為 Microsoft Edge 腳本錯誤導致列印失敗而煩惱嗎?按照我們經過驗證的分步指南,即可快速修復—無需任何技術知識。適用於最新版本的 Edge 瀏覽器,確保列印流暢無阻。

如何修復 Microsoft Edge 精準驅動程式缺少的問題

如何修復 Microsoft Edge 精準驅動程式缺少的問題

遇到 Microsoft Edge 精準驅動程式缺失錯誤?了解如何逐步修復,恢復流暢的觸控板手勢、更新和效能。為 Windows 使用者提供快速可靠的解決方案。

如何修復 Microsoft Edge Winaero Tweaker 2026 問題

如何修復 Microsoft Edge Winaero Tweaker 2026 問題

使用 Winaero Tweaker 調整後,Microsoft Edge 瀏覽器出現當機或錯誤?取得《如何修復 Microsoft Edge Winaero Tweaker 問題 2026》終極指南。提供逐步解決方案,幫助您在最新版本中流暢瀏覽網頁。快速可靠的修復方案!

解決 Microsoft Edge Rainmeter 皮膚定位錯誤

解決 Microsoft Edge Rainmeter 皮膚定位錯誤

還在為 Microsoft Edge 瀏覽器上的 Rainmeter 皮膚錯位而煩惱嗎?這本終極指南將透過逐步修復、配置和技巧,徹底解決 Microsoft Edge Rainmeter 皮膚定位錯誤,幫助您實現完美的疊加層對齊。重拾個人化體驗!