自动在Excel工作表中插入图像

时间:2014-07-25 10:06:08

标签: excel vba excel-vba

我想自动将图片插入Excel工作表。

例如我想在B列第2行显示图像路径/pictures/example-file.jpg

然后,这将加载B列第2行中的图像。

这是可能的还是我正在努力做一些无法完成的事情。

由于 麦克

1 个答案:

答案 0 :(得分:0)

假设单元格 B9 包含完整的文件规范,如:

C:\ TestFolder \ sample.jpg

然后尝试类似的事情:

Sub qwertyuiop()
    Dim MyLogo As Shape
    MyFileAndPath = Range("B9").Value
    ActiveSheet.Shapes.AddPicture MyFileAndPath, msoFalse, msoTrue, 100, 100, 70, 70
End Sub

将加载它。

修改#1:

这假设链接存储在 B1 B1700 的单元格中,并且图片将存储在链接旁边的 A 列中

Sub PicturePopulator()
    Dim B As Range, r As Range, a As Range, _
        t As Long, l As Long, w As Long, h As Long
    Set B = Range("B1:B1700")
    For Each r In B
        If r.Value <> "" Then
            MyFileAndPath = r.Value
            Set a = r.Offset(0, -1)
            t = a.Top
            l = a.Left
            h = a.Height
            w = a.Width
            ActiveSheet.Shapes.AddPicture MyFileAndPath, msoFalse, msoTrue, l, t, w, h
        End If
    Next r
End Sub

很容易修改位置。