我在我的工作表(图表)上有几个图表,我只想导出6个特定的图表。当我选择一个图表并转到Layout
选项卡时,我看到一个名为Chart Name
的东西,我假设它让我选择图表名称。我尝试将其中一个图表的名称更改为“ChartA”。请帮助这个简单的VBA代码。如何通过名称参考导出图表
Sub SaveJPGTest()
Chart("ChartA").Export "Z:\specialChart.jpg"
End Sub
我在我的工作表(图表)上有几个图表,我只想导出6个特定的图表。当我选择一个图表并转到Layout
选项卡时,我看到一个名为Chart Name
的东西,我假设它让我选择图表名称。我尝试将其中一个图表的名称更改为“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
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
选择适合的路径。
我修改了这个代码,当你的图表在它自己的工作表中。它还会自动获取活动工作表名称SheetName
,并将其用作保存类似于上述文件的文件名。我还通过将中的“\”置换了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
重新文件格式:http://www.sitepoint.com/gif-png-jpg-which-one-to-use/ – pnuts