EXCELVBA导出⾼清图⽚⽅法
EXCEL VBA 导出⾼清图⽚⽅法
车辆VBA实现的⽅法。
该⽅法适合⽤于中⼤型图⽂表格输出为图⽚格式,⽅便传阅,分辨率⽐直接复制保存要⾼,在office2010及以上版本最为流畅。
具体看代码:
力帆汽车多少钱Sub printA4()
Dim rng As Range '定义截图范围变量
'm = 200
'ActiveWindow.Zoom = m '放⼤视图⽐例⾄200%
挑战者350
'⽹上很多例⼦喜欢⽤这个放⼤视图再截图的⽅法,来获取⾼分辨率图⽚,我觉得不是很好⽤,也影响VBA运⾏效率。
'ActiveSheet.PageSetup.PaperSize = xlPaperA3 '⽹上也有⼈⽤放⼤纸张的⽅式来截取⾼清图⽚,这也不好⽤。
Set rng = ActiveSheet.Range("Print_Area") '设置截图范围,我这⾥设置的是截取“打印区域”,这个⽅法必须先设置好打印区域(设置打印区域其实就是间接设置了导出rng.CopyPicture xlPrinter, xlPicture '截图范围复制为图⽚,⽤的是CopyPicture命令,参数xlPrinter表⽰按打印效果复制, 参数xlPicture表⽰截取为图⽚格式,包括PNG武汉车市
With Sheet6.ChartObjects.Add(0, 0, rng.Width * 2, rng.Height * 2).Chart '⽤with简化命令⾏。在sheet6中新建⼀个绘图框来保存复制的图⽚。(放在哪个sheet中没 .Parent.Select '选中新建的绘图框,这是office2016版本新增的要求,没有这句会导致导出的图⽚是⼀⽚空⽩。
常州奔驰连撞多车.Paste '粘贴复制后的图⽚
SaveName = Application.GetSaveAsFilename(InitialFileName:=Year(Date) & Month(Date) & Day(Date) & "数据表A4", filefilter:="图⽚⽂件(*.png),*.png") '弹出 If SaveName <> "False" Then .Export SaveName, "PNG" '如果⽂件名不为空则导出png格式图⽚⾄指定位置
'.Export "D:\output.png", "png" 这是另⼀种保存语句
江淮大众.Parent.Delete '删除该临时绘图框
End With
'm = 50
'ActiveWindow.Zoom = m 使⽤放⼤视图的⽅法,在结束时要还原
End Sub
发布评论