EXCEL VBA 导出高清图片方法
将EXCEL表格内容另存为图片的方法有很多种,简单的比如“复制为图片格式并另存”,“打印成XPS”等等,本文着重的是利用VBA实现的方法。
该方法适合用于中大型图文表格输出为图片格式,方便传阅,分辨率比直接复制保存要高,在office2010及以上版本最为流畅。
具体看代码:
Sub printA4()
Dim rng As Range '定义截图范围变量
'm = 200
'ActiveWindow.Zoom = m '放大视图比例至200%
'网上很多例子喜欢用这个放大视图再截图的方法,来获取高分辨率图片,我觉得不是很好用,也影响VBA运行效率。
'ActiveSheet.PageSetup.PaperSize = xlPaperA3 '网上也有人用放大纸张的方式来截取高清图片,这也不好用。
Set rng = ActiveSheet.Range("Print_Area") '设置截图范围,我这里设置的是截取“打印区域”,这个方法必须先设置好打印区域(设置打印区域其实就是间接设置了导出图片参照A4/A3的比例)。也可以自定义截图范围,如A1:G10。
rng.CopyPicture xlPrinter, xlPicture '截图范围复制为图片,用的是CopyPicture命令,参数xlPrinter表示按打印效果复制, 参数xlPicture表示截取为图片格式,包括PNG\TIF等