VBA应用笔记 -- 批量导出excel工作表中的图片
业务场景:
日常工作中,我们可能会遇到需要批量导出excel表中的图片的情况,按照网友的做法,批量导出excel中的图片主要有几种方法:
- 解压缩方法:可以通过将excel文件转成rar压缩文件,解压后将图片复制出来;
- 转htm方法:将excel文件另存为htm文件,将图片复制出来;
- VBA导出方法:通过将图片转成chart对象,利用chart对象导出方法将图片批量导出。
这里主要记录一下使用VBA批量导出的方法。
例如:有如下一个工作表,需要将其中的图片批量导出
解决方案:
利用VBA遍历工作表中的所有shape对象,这里的shape对象包括了图片、图标、图表、艺术字、文本框、自定义形状等,由于shape对象没有提供export导出方法,所以通过新建chart对象,并将shape复制粘贴到chart对象中,借助chart对象提供的export方法将图片批量导出。具体参考代码如下:
Sub ExportSheetPictures()Dim shp, my_sheetSet my_sheet = Sheets("Sheet1")' 循环获取工作表中的shape对象For Each shp In my_sheet.Shapesshp.Copy' 新建空白chart对象,将shape对象复制粘贴到chart对象中With my_sheet.ChartObjects.Add(0, 0, shp.Width, shp.Height + 5).Chart.ChartArea.Border.LineStyle = 0.ChartArea.Select.Paste.Export ThisWorkbook.Path & "\" & shp.Name & ".png".Parent.DeleteEnd WithNextSet my_sheet = Nothing
End Sub
通过VBA运行后,图片被批量导出,结果如下:
总结:
注意点:
这里一定要加上.ChartArea.Select
选中一下chart对象,再进行粘贴,否则可能出现导出图片为空白的情况。如果需要导出指定图片,比如指定类型或指定行列,可以使用shape对象的type属性、TopLeftCell属性进行筛选控制。
VBA应用笔记 -- 批量导出excel工作表中的图片相关推荐
- Excel批量导出当前工作表所有图片的快捷操作
我们都知道excel是没有将图片导出的功能的,更别提批量导出多个图片了,那今天小编要和大家分享一下批量导出当前工作表图片的操作 (方方格子插件) 1.动图演示 2.选择图片工具命令按钮 3.选择导出图 ...
- excel表格内容拆分_一键批量拆分Excel工作表【模板下载】
今年5月份我们在Excel表哥微信公众号平台首发了一系列工作表.工作簿合并的文章. 从合并相同内容的单元格到合并多个工作表直至批量合并多个Excel工作簿,所有的操作只需要一键! 专辑如下,也可以在表 ...
- Excel实用技巧-如何批量提取excel工作表名称
Excel实用技巧-如何批量提取excel工作表名称 1. 打开Excel文件,点击"公式"栏,进而点击"定义管理器" 2. 在弹出的对话框中,点击新增按钮, ...
- Excel VBA 将当前活动工作表中的图片保存到以工作表名称命名的文件夹内
Sub exportpic() '将当前活动工作表中的图片保存到以工作表名称命名的文件夹内 Dim sn, path As String, j% sn = ActiveSheet.Name path ...
- excel按条件选择工作表_在Excel工作表中选择“实际使用范围”
excel按条件选择工作表 It's easy to select the current range in Excel – just press Ctrl + A. That shortcut se ...
- Excel工作表中定位最后单元格(FIND方法)
前一篇博客讲解了如何使用END属性最后单元格. Excel工作表中定位最后单元格(END属性) 在VBA中还有其他的方法可以用来定位最后单元格.工作表中示例数据如下图所示,注意其中A4为空,A6至A7 ...
- 在excel工作表中c1单元格_已知Excel工作表中A1单元格和B1单元格的值分别为“电子科技大学”、“信息中心”,要求在C1单元格显示“...
已知Excel工作表中A1单元格和B1单元格的值分别为"电子科技大学"."信息中心",要求在C1单元格显示" 更多相关问题 所谓犯罪现象的特性,是指为 ...
- 给表中指定位置添加字段_利用VBA代码,轻松完成向工作表中添加指定图片到指定位置...
VBA++ 题记:一剪闲云一溪月,一程山水一年华.一世浮生一刹那,一树菩提一烟霞.岁月静好,现世安稳.纵算云水漂泊,心若安宁,亦可淡若清风.希望见者与不见者都能安康.静下心,多学习有用的知识,多提高自 ...
- 在excel工作表中c1单元格_Excel工作表中的11个逻辑函数应用技巧,中文解读,动图演示!...
逻辑函数,简单的理解就是返回结果为TRUE或FALSE的函数.TRUE,代表判断后的结果是真的,正确的,也可以用1表示:FALSE,代表判断后的结果是假的,错误的,也可以用0表示.在Excel工作表中 ...
最新文章
- [YTU]_1064 (输入三个字符串,按由小到大的顺序输出)
- JSP中include指令的乱码问题
- linux学习笔记 (fork FILE PC)
- 自定义圆形控件 RoundImageView
- mysql_real_connect阻塞_mysql_real_connect崩溃、未经处理的异常
- 【Django 2021年最新版教程19】数据库查询 model filter 条件或or
- JavaScript 教程 (详细 全面)
- MFC:应用程序无法正常启动(0xc0150002)
- 苹果手机微信声音小怎么调大声_怎么把手机声音变大,试试这种方法
- 怎么看xp计算机是32位还是64位,教你查看XP系统的不同32位还是64位详细的步骤
- 神武手游哪个服务器人最多,神武4端游什么老区人最多
- Android 修改开机画面
- 读大道至简之我见1——团队管理
- CSS3中rotate的作用
- 学习周报20200105 | CS224N
- nodejs绿色版下载安装及配置淘宝镜像、安装vue脚手架
- 论文复审意见及实验规划
- 电磁噪声论文赏析_004变频器供电对永磁电机振动噪声源的影响研究
- 【全栈计划 —— 单片机】——Part_04 IO口输入功能的使用
- 20 考研英语题源外刊精讲赏析 1~10 期外刊原文+翻译+点评