ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
楼主: liulang0808

[分享] 整理贴:插入导出表格图片及区域导出图片等

  [复制链接]

TA的精华主题

TA的得分主题

发表于 2018-11-15 20:55 | 显示全部楼层
xl6403 发表于 2018-11-15 20:39
下载学习了一下。发现插入照片有用,运行导出照片,相应文件夹里没有照片,导出区域照片得到的是空白照片。 ...

高版本的excel里面确实会出现导出空白图片。需要在.Paste这句上面插入一句 .Parent.Select即可解决。

点评

谢谢,目前仅仅使用到07版本的  发表于 2018-11-16 07:33

TA的精华主题

TA的得分主题

发表于 2018-11-15 21:03 | 显示全部楼层
fxl447098457 发表于 2018-11-15 20:55
高版本的excel里面确实会出现导出空白图片。需要在.Paste这句上面插入一句 .Parent.Select即可解决。
  1. ActiveSheet.Pictures.Paste.Select
复制代码


这句前面怎么加了以下代码
  1. ActiveSheet.Pictures .Parent.Select
复制代码


导出的也还是空白照片。

TA的精华主题

TA的得分主题

发表于 2018-11-15 21:07 | 显示全部楼层
liulang0808 发表于 2018-11-15 20:49
下载不见运行也出现这个问题吗

下载了附件,删除表格里已经插入好的照片,把导出照片和导出区域照片文件夹里原胡的照片删除,再运行三个程序,才发现我刚才说到的情况。

TA的精华主题

TA的得分主题

发表于 2018-11-15 21:07 | 显示全部楼层
xl6403 发表于 2018-11-15 21:03
这句前面怎么加了以下代码

你代码都没找对地方。。。。见红色部分。导出图片的代码。
            With ActiveSheet.ChartObjects.Add(0, 0, shp.Width, shp.Height).Chart
                .Parent.Select
                .Paste
                .Export pth & shp.TopLeftCell.Offset(0, -1) & ".jpg"
                .Parent.Delete
            End With

TA的精华主题

TA的得分主题

发表于 2018-11-17 16:32 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
本帖最后由 xl6403 于 2018-11-17 16:47 编辑
fxl447098457 发表于 2018-11-15 21:07
你代码都没找对地方。。。。见红色部分。导出图片的代码。
            With ActiveSheet.ChartObjects. ...

加了这句后,导出照片这部分代码就有用了,能导出照片。区域导出照片这部分代码导出的照片就不是空白照片了。谢谢。

TA的精华主题

TA的得分主题

发表于 2018-12-10 22:44 | 显示全部楼层
版主大大,学习中发现一个小问题。

在添加图片的代码中,前面有几句,作用应该是删除之前插入过的图片吧。
For Each shp In ActiveSheet.Shapes
        If shp.Type = 13 Then shp.Delete
Next shp

对于用pictures.insert插入的图片,只是添加了一个链接,所以已经插入的图片的msoshapetype就成了msolinkedpicture啦。要改成shp.type=11才是删除掉之前已经插入的图片

TA的精华主题

TA的得分主题

发表于 2018-12-10 23:12 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
版主大大,难道又是高版本惹的祸,哈哈~~
删除已经插入的图片,和导出图片时,
判断条件shp.type的值都要改成11才行得通

评分

1

查看全部评分

TA的精华主题

TA的得分主题

 楼主| 发表于 2018-12-11 08:26 | 显示全部楼层
爱笑的萌兽 发表于 2018-12-10 23:12
版主大大,难道又是高版本惹的祸,哈哈~~
删除已经插入的图片,和导出图片时,
判断条件shp.type的值都要 ...

这个跟版本没有关系的,楼主可以查帮助,见截图另外这个帖子处理的是插入图片的。
QQ截图20181211082436.jpg

TA的精华主题

TA的得分主题

发表于 2018-12-11 10:17 | 显示全部楼层
liulang0808 发表于 2018-12-11 08:26
这个跟版本没有关系的,楼主可以查帮助,见截图另外这个帖子处理的是插入图片的。

版主大大,可能我没表述明白,直接上动图吧,
第一个是shp.type=13时,执行后没有导出图片。


第二个是shp.type=11时,就可以了

立即窗口查看 msgbox activesheet.shapes(4).type 结果也是11

2018-12-11_101518.jpg
11.gif
13.gif

TA的精华主题

TA的得分主题

发表于 2018-12-11 10:27 | 显示全部楼层
liulang0808 发表于 2018-12-11 08:26
这个跟版本没有关系的,楼主可以查帮助,见截图另外这个帖子处理的是插入图片的。

重新下载了附件,发现问题所在了。原来图片最初不是通过.pictures.insert方法添加的呀~~~汗。
我学习您的附件时,先是把以前导入的图片给删掉,然后运行了一次导入图片的代码。所以shape.type就从msopicture变成了msolinkedpicture了。~~~汗
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-12-26 16:52 , Processed in 0.033173 second(s), 9 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表