如何通过名称参考导出图表

我在我的一张纸(图表)上有几个图表,我只想导出6个特定的图表。 当我select图表并转到Layout选项卡时,我看到一些名为“ Chart Name ”的Chart Name ,我假设我select图表名称。 我尝试将其中一个图表更改为“ChartA”。 请帮助这个简单的VBA代码。

 Sub SaveJPGTest() Chart("ChartA").Export "Z:\specialChart.jpg" End Sub 

添加了basePath以将jpg保存在与excel文件相同的目录中。 保存为PNG,因为它看起来比JPG更好的质量和更小的文件大小。 不知道这是否是最好的文件格式。

此代码将charts和图表ChartA活动,然后保存活动图表。

 Sub SaveAreaPowerJPGs() Dim basePath As String basePath = ThisWorkbook.Path & "\" ActiveWorkbook.Sheets("charts").Activate ActiveSheet.ChartObjects("ChartA").Activate ActiveChart.Export Filename:=basePath & "ChartA.jpg", Filtername:="PNG" End Sub 

复制从: http : //windowssecrets.com/forums/showthread.php/129693-Export-charts-from-Excel-into-any-image-format与较小的适应。

 Sub ChartToJPG() Dim Chrt As Chart Application.ScreenUpdating = False ActiveSheet.ChartObjects("ChartA").Activate ActiveChart.ChartArea.Copy Set Chrt = Charts.Add Chrt.Paste Chrt.Export Filename:="C:\Users\Maudibe\Desktop\MyChart.jpg", Filtername:="JPG" Application.DisplayAlerts = False ActiveSheet.Delete Application.DisplayAlerts = True Application.ScreenUpdating = True End Sub 

select适合的path。

我修改了这个代码,当你的图表在它自己的工作表中。 它还会自动获取活动工作表名称SheetName ,并将其用作保存类似于上面的文件名称。 我也通过将“\”放在Filename改变了basePath 。 请享用。

 Sub Save_Chart() Dim basePath As String basePath = ThisWorkbook.Path SheetName = ActiveSheet.Name ActiveWorkbook.Sheets(SheetName).Activate ActiveSheet.Export Filename:=basePath & "\" & SheetName & ".jpg", Filtername:="JPG" End Sub