通过VBA将嵌入图像添加到动态图库

时间:2014-02-05 13:25:29

标签: excel vba

有没有人知道如何将图像从路径或嵌入图像/目录中的图像(在静态图库模式下显示没有任何问题)传递给getItemImage customUI动态图库处理程序?

我试图引用一个像这样的路径的图像:

Sub Gallery1_getItemImage(control As IRibbonControl, index As Integer, ByRef returnedVal)
    Select Case control.id
    Case "Gallery1": returnedVal = "C:\Boxes\Comapny_Box1.png"
    End Select
End Sub

我在程序生成的Gallery对象中看不到任何结果。我认为使用嵌入在excel文件中的图像我可以使用与mso图标相同的方式(就像下面的代码一样 - 适用于mso图标)。我是否必须使用一些特殊方法来引用它?

Sub Gallery1_getItemImage(control As IRibbonControl, index As Integer, ByRef returnedVal)
    Select Case control.id
    Case "Gallery1": returnedVal = "ChartStylesGallery"
    End Select
End Sub

我也尝试使用returnedVal = LoadPicture("C:\Boxes\Company_Box1.png"),但我收到无效的图片错误。

最好的问候

1 个答案:

答案 0 :(得分:0)

我已经想出如何使用外部图形文件提供此处理程序。 有效的代码看起来像这样:

Sub Gallery1_getItemImage(control As IRibbonControl, index As Integer, _
ByRef returnedVal)

    Select Case control.id
       Case "Gallery1": Set returnedVal = LoadPicture("C:\Boxes\Company_Box1.bmp")
    End Select

End Sub

我不得不使用bmp文件而不是png,并使用Set语句和LoadPicture()方法。