解决excel2010及之后版本Pictures.Insert链接问题

解决excel2010及之后版本Pictures.Insert链接问题excel2010及之后版本Pictures.Insert方法,因为在文档中只存储链接信息以前在Excel2003中用picture.insert方法写的代码,到了Excel2010中只能插入链接,图片不能随文件一起保存,解决方法1.个简单的方法是将图片剪切一下,然后重新粘贴,这样Excel文件中将在保存时包含图片code:lole_sheet.application.selection.cut //剪切粘贴图片让文件保存的时候包含图片//lole_sheet.application.Pictures.cut //剪切粘贴图片让文件保存的时候包含图片lole_sheet.Pictures.paste.select//剪切粘贴图片让文件保存的时候包含图片lole_sheet.application.Selection.left=ldec_xlole_sheet.application.Selection.top=ldec_y2.改为shapes.addpicture,但遇到图片宽高比例的问题。经过一悉研究,,好像找到了完美的方法,请各位指正。———————————————-Shapes.AddPicture 最后两个参数用-1,-1表示按图片原始尺寸插入ActiveSheet.Shapes(ActiveSheet.Shapes.Count)可以引用刚插入的图片,从而可以读取图片宽和高,以及进行缩放。如:ldec_x=..//leftldec_y=..//top////原始图片大小插入lole_sheet.Shapes.AddPicture(ls_filename, True, True,ldec_x,ldec_y,-1,-1) ////lole_sheet.Shapes(lole_sheet.Shapes.Count)//可以引用刚插入的图片////原始圖片大小ldec_oripic_w=lole_sheet.Shapes(lole_sheet.Shapes.Count).Widthldec_oripic_h=lole_sheet.Shapes(lole_sheet.Shapes.Count).Heightlole_sheet.Shapes(lole_sheet.Shapes.Count).left = ldec_x + 2lole_sheet.Shapes(lole_sheet.Shapes.Count).top = ldec_y + 2If ldec_w>0 Thenlole_sheet.Shapes(lole_sheet.Shapes.Count).Width =ldec_wEnd IfIf ldec_h>0 Thenlole_sheet.Shapes(lole_sheet.Shapes.Count).Height=ldec_hEnd If或选中方式:ldec_x=..//leftldec_y=..//top//原始图片大小插入lole_sheet.Shapes.AddPicture(ls_filename, True, True,ldec_x,ldec_y,-1,-1).select //選中對象//原始圖片大小ldec_oripic_w=lole_sheet.application.Selection.ShapeRange.Widthldec_oripic_h=lole_sheet.application.Selection.ShapeRange.Heightlole_sheet.application.selection.left = ldec_x + 2lole_sheet.application.selection.top = ldec_y + 2If ldec_w>0 Thenlole_sheet.application.Selection.ShapeRange.Width =ldec_wEnd IfIf ldec_h>0 Thenlole_sheet.application.Selection.ShapeRange.Height=ldec_hEnd If

以上方法PB测试通过。

使用双手头脑与心灵的是艺术家,只有合作双手

解决excel2010及之后版本Pictures.Insert链接问题

相关文章:

你感兴趣的文章:

标签云: