如何利用EXCEL VBA,自动批量在B列插入A列相对应的图片,并且图片与B列单元格格式大小一致

图片文件在D:\pic中,A1单元格内容为“张三”,我要在B1单元格中自动插入图片,图片名为“张三.JPG”,并且图片能够自动适应B1格子大小,如下B列根据A列要插入很多... 图片文件在D:\pic中,A1单元格内容为“张三”,我要在B1单元格中自动插入图片,图片名为“张三.JPG”,并且图片能够自动适应B1格子大小,如下B列根据A列要插入很多照片,请求大神写个代码(本人菜鸟,代码最好能详细介绍一下,那边干嘛用的,更改位置数据方法)
A1 B1
张三 张三.jpg
李四 李四.jpg
王五 王五.jpg
展开
 我来答
yhw马前卒
2014-09-13 · TA获得超过384个赞
知道小有建树答主
回答量:340
采纳率:100%
帮助的人:118万
展开全部
' a列为图片名c列显示图片
Sub insertPic()
     Dim i As Integer
      Dim FilPath As String
      Dim rng As Range
      Dim s As String
      With Sheets("sheet1")
          For i = 3 To .Range("a65536").End(xlUp).Row
              FilPath = ThisWorkbook.Path & "\" & "图片档案" & "\" & .Cells(i, 1).Text & ".jpg"
              If Dir(FilPath) <> "" Then
                  .Pictures.Insert(FilPath).Select
                  Set rng = .Cells(i, 3)
                  With Selection
                      .Top = rng.Top + 1
                      .Left = rng.Left + 1
                      .Width = rng.Width - 1
                      .Height = rng.Height - 1
                  End With
              Else
                  s = s & Chr(10) & .Cells(i, 1).Text
              End If
          Next
          .Cells(3, 1).Select
      End With
      If s <> "" Then
          MsgBox s & Chr(10) & "没有照片!"
      End If
  End Sub

参考一下

更多追问追答
追问
.TOP前面的点要加吗?按照这个方法不行啊?能说详细一点吗?我是录制宏然后停止宏,接着编辑宏把你发的代码加进去,把图片地址加进去后执行!挑出对话框所有图片文件名跳出来了!但是图片没有出来!求解
追答
在工作簿的同路径下建一个文件夹,命名为“图片档案”,把你的图片复制到此。
复制粘贴代码后,运行代码,完成。
绿衣人敲门
2014-09-13 · 知道合伙人软件行家
绿衣人敲门
知道合伙人软件行家
采纳数:18765 获赞数:63765
毕业于西北大学计算机网络技术专业,现在在西安电力学院进行网络推广维护工作!

向TA提问 私信TA
展开全部
确实是个难题呀
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式