问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

Excel单元格内插入图片(VBA创建函数,根据图片名称批量插入)

创作时间:
作者:
@小白创作中心

Excel单元格内插入图片(VBA创建函数,根据图片名称批量插入)

引用
CSDN
1.
https://blog.csdn.net/yujiaerzong/article/details/79619527

本文将介绍如何在Excel中使用VBA(Visual Basic for Applications)批量插入图片。通过创建一个简单的VBA函数,你可以根据单元格中的图片名称,自动将图片插入到指定位置。这个方法特别适合需要在Excel表格中批量插入图片的场景,例如制作产品目录、项目报告等。

操作步骤

  1. 创建素材文件夹
    在桌面上创建一个名为“图库”的文件夹,用于存放要插入的图片。同时,准备一个Excel文件,例如命名为“花.xlsx”,作为待插入图片的工作表。

  2. 设置Excel表格内容布局
    确保Excel表格的内容布局如下图所示:

  3. 创建VBA函数
    打开Excel文件,按Alt + F11打开VBA编辑器,选择Sheet1,然后将以下代码复制到代码窗口中:

    Sub 插入图形应用()
        For Each shap In Sheet1.Shapes
            If shap.Type <> 8 Then shap.Delete
        Next shap
        For Each Rng In Range([a2], Cells(Application.CountA(Columns(1)), 1))
            Dim i As String
            i = ""
            If Len(Dir(ThisWorkbook.Path & "\图库\" & Rng & ".jpg")) Then
                i = ThisWorkbook.Path & "\图库\" & Rng & ".jpg"
            ElseIf Len(Dir(ThisWorkbook.Path & "\图库\" & Cells(j, 1) & ".png")) Then
                i = ThisWorkbook.Path & "\图库\" & Rng & ".png"
            End If
            Set rngs = Cells(Rng.Row, 3)
            Sheet1.Shapes.AddPicture i, True, True, rngs.Left, rngs.Top, rngs.Width, rngs.Height
        Next
    End Sub
    
  4. 开启Excel开发工具
    如果你的Excel中没有“开发工具”选项卡,需要先将其开启。具体操作为:文件 -> 选项 -> 自定义功能区 -> 开发工具,勾选后点击确定。

  5. 插入表单控件
    在“开发工具”选项卡中,选择“插入”,然后选择“表单控件”中的“按钮(窗体控件)”。在工作表中绘制一个按钮,弹出的对话框中选择之前创建的VBA函数“插入图形应用”,并修改按钮名称为“插入图片”。

使用说明

  • 图片显示大小由给定表格大小决定,可以在插入前根据需要调整单元格大小。
  • 该程序已经包含了对“jpg”和“png”格式图片的判断,如果需要支持其他格式,可以自行修改代码。
  • 确保图片名称与Excel表格中对应单元格的名称完全一致,包括大小写。

通过以上步骤,你就可以在Excel中实现批量插入图片的功能了。这个方法不仅提高了工作效率,还让数据展示更加直观和生动。

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号