我一直在尝试使用Python将Excel中的图表导出为图像文件(JPG或ING)。我正在查看WIn32com。以下是目前的代码。
import win32com.client as win32
excel = win32.gencache.EnsureDispatch("Excel.Application")
wb = excel.Workbooks.Open("<WORKSHEET NAME>")
r = wb.Sheets("<SHEET NAME>").Range("A1:J50")
# Here A1:J50 is the area over which cart is
r.CopyPicture()
我遇到了困难。现在我需要将所选范围复制到文件中。任何帮助或指向文档的提示都可以对我有很大帮助。
上述代码是基于以下VBA脚本模拟的:
Sub Export_Range_Images()
' =========================================
' Code to save selected Excel Range as Image
' =========================================
Dim oRange As Range
Dim oCht As Chart
Dim oImg As Picture
Set oRange = Range("A1:B2")
Set oCht = Charts.Add
oRange.CopyPicture xlScreen, xlPicture
oCht.Paste
oCht.Export FileName:="C:\temp\SavedRange.jpg", Filtername:="JPG"
End Sub
代码片段来自:http://vbadud.blogspot.com/2010/06/how-to-save-excel-range-as-image-using.html
Sheet
对象有一个ChartObjects
集合:每个ChartObject
都有一个包含Export
方法的Chart
。复制包含图表的范围,然后将其粘贴到空图表中似乎是绕了一个大弯路。 - Tim Williams