1

皆さん、毎週更新する必要のあるExcelドキュメントがあります...更新する必要のあるセルはごくわずかです。これは、 http://www.python-excel.org/から完全に実行できます。

これらのセルが更新された後、Excel内にグラフが生成されます。このグラフをPython経由で.pngにエクスポートすることは可能ですか(つまり、セルA3〜B7をコピーして画像にエクスポートする)?

考え、アイデア?

ありがとう!

4

2 に答える 2

2

COM 拡張機能を使用して、既存のチャートを PNG にエクスポートできます。エクスポートする前に、グラフが新しいデータで既に更新されていることを確認する必要があります。

Chartsオブジェクト に関するこの議論は役に立ちました: http://msdn.microsoft.com/en-us/library/aa213725(v=office.11 ​​).aspx

次のようなものを作成します(テストされていないコード):

from win32com.client import Dispatch
xlsApp = Dispatch("Excel.Application") 
xlsWB = xlsApp.Workbooks.Open(r'C:\TEST\WorkbookWithAChart.xlsx') 
xlsSheet = xlsWB.Sheets("Sheet 1") 
mychart = XlsSheet.Charts(1)  #'1' is the index of the chart object in the wb
mychart.Export(Filename=r'C:\TEST\MyExportedChart.png') 

参考文献:

于 2012-06-26T21:40:52.517 に答える
1

これは実際にエクセルを使わないとできません。更新された情報でグラフを描画するには、Excel が必要です。

Excel を使用できる場合は、チャートを PDF ファイルにエクスポートするマクロを作成できます。このようなもの:

Sheets("Sheet1").ChartObjects("Chart Name").Chart.ExportAsFixedFormat _
    Type:=xlTypePDF, _
    Filename:="C:\folder\filename.pdf", _
    Quality:=xlQualityStandard, _
    OpenAfterPublish:=False
于 2012-06-26T18:55:11.300 に答える