使用VBA将Excel图表导出为TIF

  • 本文关键字:TIF VBA Excel 使用 excel vba
  • 更新时间 :
  • 英文 :


我正在尝试使用VBA将Excel 365图表批量导出为TIF。该代码在导出PNG时有效,但在创建TIF时,它会导出空的图像文件。

简化代码:

'Save the charts
MyFileName = ActiveWorkbook.Path & "" & "Chart.tif"
Worksheets("Charts").ChartObjects(1).Chart.Export _
Filename:=MyFileName, FilterName:="TIF"

当对TIF的引用更改为PNG时,这将按预期工作。

为什么选择TIF?目的是为了打印这些文件,所以它们需要分辨率。我已经在R中做到了这一点,但我也被要求在Excel中做到这一点。

我知道Excel 365可以以TIF格式保存图表(选择图表,右键单击,另存为图片…,另存类型有.TIF选项(。

我尝试将TIF的引用交换为TIFF,以防过滤器不一致。我还试图查找有效FilterName选项的列表。

我讨厌这个,但它有效。

Sub Test()
Dim Filename As String
Filename = "State_Chart.tif"
Sheets("Charts").ChartObjects("Chart 1").Activate
Application.SendKeys ("+{F10}")
Application.SendKeys ("S")
Application.SendKeys ("S")
Application.SendKeys ("{RETURN}")
Application.SendKeys (Filename)
Application.SendKeys ("{TAB}")
Application.SendKeys ("T")
Application.SendKeys ("{RETURN}")
End Sub

这会选择图表,然后发送键盘键打开菜单,选择另存为图片,输入文件名,选择tiff(使用S表示SVG(,然后按enter键关闭对话框。

相关内容

  • 没有找到相关文章

最新更新