显示OLEObject作为默认图标

我试图显示从当前的其他Excel文件的链接。 我能够显示它作为自定义图标,指定图标的path,但如果可能我想显示为默认的Excel图标,所以我不必将此图标文件发送给用户。

v_sheet.OLEObjects.Add Filename:=v_fileNameToImport, Link:=True, DisplayAsIcon:=True, _ Top:=40, Left:=40, Width:=100, Height:=100, IconLabel:=v_regions(j), IconFileName:=v_iconFile, IconIndex:=0 

该文件说:

IconFileName可选

一个string,指定包含要显示的图标的文件。 仅当DisplayAsIcon为True时才使用此参数。 如果未指定此参数或文件不包含图标,则使用OLE类的默认图标。

但在我的情况下,没有工作。 如果我没有指定图标,它将显示为一个空白的矩形。 我需要做些什么来显示这个默认的图标?

看来,你总是必须指定图标path。 我已经logging了一个macros,并通过UI添加,这就是我得到的:

 Sub Macro1() ' ' Macro1 Macro ' Workbooks.Open Filename:= _ "C:\Path\FileToAdd.xls" ActiveWindow.Visible = False ActiveSheet.OLEObjects.Add(Filename:= _ "C:\Path\FileToAdd.xls.xls" _ , Link:=True, DisplayAsIcon:=True, IconFileName:= _ "C:\windows\Installer\{90140000-0011-0000-0000-0000000FF1CE}\xlicons.exe", _ IconIndex:=0, IconLabel:= _ "C:\Path\FileToAdd.xls" _ ).Select Range("G8").Select End Sub 

我发现你可以简单地做:

 IconFileName:= "excel.exe" 

它在我的和其他电脑上工作。