MSExcel.Range是vba的用法,XLS.Picture是XLS.Book的用法。这2个不是同一个东西,不能混用。
vba添加图片参考:
Dim App As New MSExcel.Application
try
Dim Wb As MSExcel.WorkBook = App.WorkBooks.Open("E:\问题\abc.xlsx")
Dim Ws As MSExcel.WorkSheet = Wb.WorkSheets(1)
Dim Rg As MSExcel.Range = Ws.Range("B4") '指定单元格的坐标
ws.Shapes.AddPicture("E:\问题\123.gif", Microsoft.Office.Core.MsoTriState.msoFalse, Microsoft.Office.Core.MsoTriState.msoTrue,Rg.left, Rg.Top, 120, 30)
Wb.SaveAs("E:\问题\abc1.xlsx")
app.quit
catch ex As exception
msgbox(ex.message)
app.quit
End try
语法
ws.Shapes.AddPicture("文件路径", Microsoft.Office.Core.MsoTriState.msoFalse, Microsoft.Office.Core.MsoTriState.msoTrue,插入点左边距, 插入点上边距, 图片宽,图片高)