效果如下
附件代码
Sub test()
Dim rg As Range, shp As Shape
Rem ---------------------------------------------------
Rem 清除图形对象
For Each shp In ActiveSheet.Shapes
shp.Delete
Next
Rem ---------------------------------------------------
Rem 按名称插入图片
Rem 下行代码,根据A列开始循环处理
For I = 1 To Cells(Rows.Count, "A").End(3).Row
Set rg = Cells(I, "B")
Rem 下面代码,添加矩形
ActiveSheet.Shapes.AddShape(msoShapeRectangle, rg.Left, rg.Top, rg.Width, rg.Height).Select
Rem 下面代码,在矩形内部用图片填充
Selection.ShapeRange.Fill.UserPicture rg.Offset(0, -1).Value
Next
End Sub
1.新建excel文件,对A列填充链接,点击另保存->选择保存类型为Excel启用宏的工作薄(*.xlsm)
2.打开另保存的*.xlsm文件,按快捷键Alt+F11,点击VBA界面的视图->代码窗口,复制文本最后的附件代码,点击文件->保存
3.点击excel的视图->宏->查看宏->选择Sheet1.test,位置选当前工作薄,最后点击执行