虽然在其他Microsoft Office系列软件中,可以将Excel中复制的图表,使用选择性粘贴,转换为图片形式来使用。但在非Microsoft Office系列软件中,可能需要使用图片格式的图表,问题是Excel并不支持将图表直接导出为图片格式,这就需要我们使用一些变通的方法来实现图片导出。
以网页保存形式导出
Excel支持将文档保存为普通网页(htm、html)和单文件(mht、mhtml)格式,如图16.2-1所示,其中当保存为普通网页格式时,我们可在保存目录的同文档名文件夹中获得图表图片。在Excel 2003及其以前版本中,可获得的图片是gif格式;在Excel 2007/2010中,可获得的图片是png格式。
图16.2-1 Excel 2003另存为网页对话框
借助其他软件导出
1.借助PowerPoint导出
PowerPoint软件支持将图片另存为多种图片格式,借助PowerPoint软件可实现将图表转换为本地图片。在Excel中选中图表复制,在PowerPoint软件中选择性粘贴为图片(增强性图元文件),然后单击鼠标右键>另存为图片。在另存对话框中,可选的类型有jpg、gif、bmp等种类繁多的格式,如果使用PowerPoint 2010,则保存格式更是多样。
2.借助Microsoft Office Picture Manager导出
Microsoft Office Picture Manager软件是在Office正常安装下,即被默认安装的图片管理软件,可完成图片的简单管理和编辑。该软件可直接提取剪切板的图片,将其保存为本地图片。在Excel中,按住键盘Ctrl键,选中图表复制,并选择性粘贴为图片(增强性图元文件),将这个粘贴图片剪切,然后在Microsoft Office Picture Manager中粘贴即可获得png格式图表。
3.借助其他软件导出
可借助pdf打印机或另存为pdf格式的文档,当然根据版本的不同,可能需要安装相应的软件,然后将pdf文件另存为图片格式来实现。Microsoft Office 2003中包含了一个Microsoft Office Document Imaging软件,可将Excel文档保存为tif或tiff的图片格式。除此之外,也可使用屏幕截图软件来获得图片,这类软件有很多,感兴趣的读者请搜索互联网。
借助VBA导出
其实不论Excel版本,均支持将图表或矢量图形导出为位图格式的图片形式,但遗憾的是Excel并未提供相应的菜单按钮,这就需要我们使用VBA来处理这样的需求。使用VBA来导出位图格式的图片相当简单,只需使用图表的Export方法即可。但该方法并不支持emf格式的矢量图片,所以在图16.2-2案例中,emf格式的图片借助PowerPoint来完成导出,如果没有安装PowerPoint软件,则该方法无效。
图16.2-2 Excel 2003另存为网页对话框[资料来源:纽约时报网站]
以下是图片导出的VBA代码,和图16.2-2案例中的“图表输出”按钮关联,输出图表必须要在选中前提下。如果读者对此感兴趣,可以在此基础上进行修改和扩充。
程序代码:16.2-1 模块1的公有变量申明