【问题标题】:VBA Excel Adding pictures to a worksheetVBA Excel 添加图片到工作表
【发布时间】:2011-08-13 10:34:18
【问题描述】:

我发现了一些有助于将图片插入工作表的代码,但用户必须选择插入哪张图片。相反,我希望它会选择一张特定的图片(特别是公司徽标)并插入它。代码如下:

PicLocation = Application.GetSaveAsFilename("C:\Work\test_Project\", "CA_Value_AVM, *.jpg", 1)
If PicLocation <> "" Then
    ActiveSheet.Pictures.Insert(PicLocation).Select
Else
    Exit Sub
End If

当单击按钮时执行此代码。用户单击它,然后打开路径“C:\Work\test_Project\”,用户必须单击图片。我需要对此进行更改,以便用户不会点击任何内容。

【问题讨论】:

    标签: excel vba image


    【解决方案1】:

    我知道这是 4 年前提出的,但我想继续在此处更新答案,以便操作人员和未来的搜索者(例如我自己)可以得到更完整的答案。

    jonsca 的回答是合适的并且会起作用,但是如果电子表格被移动,您的图片将不起作用。本质上,ActiveSheet.Pictures.Insert嵌入图像,这意味着如果源图像或电子表格被移动,链接将断开并且图像将不会显示(对于公司电子表格来说不是很好,正如 OP 最初询问的那样)。

    但是,如果您希望图片在移动/发送/等时正常工作。你可以使用:

    ActiveSheet.Shapes.AddPicture("C:\Work\test_Project\myjpgfile.jpg", False, True, 1, 1, 1, 1)
    

    请参阅this post 了解有关定位和内容的更多说明。

    (感谢 PaulStock 的原帖)

    【讨论】:

      【解决方案2】:

      它应该是这样的:

      ActiveSheet.Pictures.Insert("C:\Work\test_Project\myjpgfile.jpg").Select
      

      因为这就是函数返回的所有内容。

      【讨论】:

      • 这非常简单而且更好。谢谢
      猜你喜欢
      • 2017-01-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-02-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多