我已经看到很多代码在单个工作表中循环,但是我试图遍历工作簿中单个工作表的图表。我的代码如下(你可以看到我只是想把图表保存为PDF):
Sub ExportAllCharts()
Dim Current As Worksheet
' Loop through all of the worksheets in the active workbook.
For Each Current In Worksheets
If TypeName(Current) = "Chart" Then
objCht.ExportAsFixedFormat xlTypePDF, Filename:= _
"c:/" & Current.Name, Quality:=xlQualityStandard, _
IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=False
End If
Next
End Sub
不幸的是,当代码遍历工作簿中的所有工作表时,由于某种原因它会跳过图表。是否有适用于Excel中各个图表的Worksheets
?或者是否有其他方法可以做到这一点,我没有想过?
谢谢! 大卫
答案 0 :(得分:1)
我刚尝试使用此代码进行快速测试,并打印了Chart
工作表:
Public Sub test()
Dim oChart As Chart
For Each oChart In ActiveWorkbook.Charts
Debug.Print oChart.Name
Next
End Sub
那应该做你需要的。仅供参考,一个好的起点是使用VBA对象浏览器,View -> Object Browser
或Excel Visual Basic编辑器中的F11。
希望有所帮助。