添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接
本人使用的是excel201064位excel.最近在做产品目录,参考网上代码自动在单元格插入原图片比列不变,根据单元格大小去插入适当大小的图片的代码.后面发现代码导入图... 本人使用的是excel2010 64位excel.最近在做产品目录,参考网上代码自动在单元格插入 原图片比列不变,根据单元格大小去插入适当大小的图片的代码.
后面发现代码导入图片时很快,但保存后重新打开excel很慢,然后我测试了把源图片删除后,重新打开excel,图片全部提示没有找到文件.

后面搜了网上资料说 代码中ActiveSheet.Pictures.Insert是引用地址导入图片,所以导致上面的问题.
解决方法是替换为:ActiveSheet.Shapes.AddPicture "引用地址", msoFalse, msoTrue, ActiveCell.Left, ActiveCell.Top, ActiveCell.Width, ActiveCell.Height

但问题是ActiveSheet.Shapes.AddPicture 是否有锁定原图片横纵比的参数,搜索网上没有相关资料,请问各位高手,能否实现?或者使用会原代码ActiveSheet.Pictures.Insert,也可以实现锁定原图片横纵比,也可以在保存后及时删除路径里面的图片,excel里面的图片也不影响,谢谢!!!
可能说得有点复杂,简单点说:
我想实现图片jpg 按照图片原来的比例插入到excel,而这个图片是嵌入形式直接保存在excel,不会因为原图片删除了,就显示不出来的.

我自己想到了先用ActiveSheet.Pictures.Insert引入锁定原比例得到尺寸在使用ActiveSheet.Shapes.AddPicture重新插入并删除ActiveSheet.Pictures.Insert引入的图片,但太转折了,有方便一点的方法吗?

已经自己解决了.除了上面的方法可以曲线救国, 也可以上网搜索"shapes.addpicture 插入的图片怎么获取图片的原始宽高"相关帖子.可以自定义函数获取图片宽高再调整.