搜档网
当前位置:搜档网 › excelvba实例教程#054:导出工作表中的图片

excelvba实例教程#054:导出工作表中的图片

有时需要将工作表中的图形对象保存为单独的图像文件,可以使用Export方法将工作表中的图片以文件形式导出,如下面的代码所示。

1.Sub ExportShp()

2. Dim Shp As Shape

3. Dim FileName As String

4. For Each Shp In

5.If = msoPicture Then

6.FileName = & "\" & & ".gif"

7.

8.With 0, + 28, + 30).Chart

9. .Paste

10. .Export FileName, "gif"

11. .

12.End With

13.End If

14. Next

15.End Sub

代码解析:

ExportShp过程将Sheet1工作表的所有图片以文件形式导出到同一目录中。

第4行代码使用For Each...Next 语句遍历Sheet1工作表中的所有图形。

第5行代码判断图形的类型是否为图片,应用于Shape对象的Type属性返回或设置图形类型,可以为表格 1所示的MsoShapeType常量之一。

表格 1 MsoShapeType常量

第6行代码使用字符串变量FileName记录需导出图形的路径和名称。

第7行代码复制图形,应用于Shape对象的Copy方法将对象复制到剪贴板。

第8行代码使用Add方法在工作表中添加一个图表,应用于ChartObjects对象的Add 方法创建新的嵌入图表,语法如下:(Left, Top, Width, Height)

参数expression是必需的,返回一个ChartObjects对象。

参数Left、参数Top是必需的,以磅为单位给出新对象的初始坐标,该坐标是相对于工作表上单元格A1的左上角或图表的左上角的坐标。

参数Width、参数Height是必需的,以磅为单位给出新对象的初始大小。

第9行代码使用Paste方法将图形粘贴到新的嵌入图表中,应用于Chart对象的Paste方法将剪贴板中的图表数据粘贴到指定的图表中,语法如下:

(Type)

参数expression是必需的,返回一个Chart对象。

参数Type是可选的的,如果剪贴板中有图表,本参数指定要粘贴的图表信息。可为以下XlPasteType常量之一:xlFormats、xlFormulas或xlAll。默认值为xlAll,如果剪贴板中是数据不是图表,则不能使用本参数。

第10行代码使用Export方法将图表导出到同一目录中,应用于Chart对象的Export方法以图形格式导出图表,语法如下:(Filename, FilterName, Interactive)

其中参数Filename是必需的,被导出的文件的名称。

第10行代码删除新建的图表。因为Chart对象是不能使用Delete方法直接删除的,应先使用Parent属性返回指定对象的父对象,然后使用Delete方法删除。

相关主题