使用VBA将Microsoft Visio中选中内容导出为图片文件
Visio选中元素一键导出为指定格式图片的VBA方案
我平时需要频繁把Visio绘图里的选中元素导出成图片(支持bmp、png等格式),每次通过菜单操作太麻烦,折腾了几次后找到了可用的VBA代码,能直接指定导出路径、每英寸像素分辨率,无需手动走菜单流程,分享给有同样需求的人。
(Visio中选中的元素示例)
代码实现
Sub ExportSelectedShapesToImage() Dim exportPath As String Dim resolution As Integer Dim exportFormat As VisSaveAsUIFileType ' 自定义参数:按需修改以下内容 exportPath = "C:\Your\Target\Path\selected_shapes.png" ' 替换为你的目标路径,后缀对应格式 resolution = 300 ' 每英寸像素分辨率,可调整数值 exportFormat = visSaveAsPNG ' 可选格式:visSaveAsBMP, visSaveAsPNG, visSaveAsJPEG等 Dim vsoSelection As Selection Set vsoSelection = ActiveWindow.Selection If vsoSelection.Count = 0 Then MsgBox "请先选中需要导出的元素!", vbExclamation Exit Sub End If ' 创建临时页面存放选中元素 Dim tempPage As Page Set tempPage = ActiveDocument.Pages.Add tempPage.Name = "TempExportPage" ' 复制选中元素到临时页面 vsoSelection.Copy tempPage.Paste ' 导出临时页面为指定格式图片 tempPage.ExportAsFixedFormat _ visFixedFormatPNG, exportPath, visDocExPrint, visPrintAll, , , , resolution ' 删除临时页面 ActiveDocument.Pages.Delete tempPage.Name MsgBox "导出完成!文件路径:" & exportPath, vbInformation End Sub
使用说明
- 打开Visio后按
Alt+F11打开VBA编辑器 - 插入新模块,将上述代码粘贴进去
- 修改代码中的
exportPath、resolution和exportFormat参数,匹配你的需求 - 返回Visio界面,选中要导出的元素,运行该宏即可完成导出
内容的提问来源于stack exchange,提问作者Gregory A
相关产品推荐
相关产品推荐

