2013-04-02 92 views
3

Python和MS Excel的问题 - 使用win32com,我能够在Excel中创建图表,但我无法在工作表中移动它。我发现网上的代码生成图表:Python,Excel和图表使用win32com

import win32com.client 
from win32com.client import constants as c 

xl = win32com.client.gencache.EnsureDispatch('Excel.Application') 
xl.Visible = True 
wb = xl.Workbooks.Add() 
ws = xl.ActiveSheet 
ws.Range('A1').FormulaR1C1 = 'X' 
ws.Range('B1').FormulaR1C1 = 'Y' 
ws.Range('A2').FormulaR1C1 = 1 
ws.Range('A3').FormulaR1C1 = 2 
ws.Range('A4').FormulaR1C1 = 3 
ws.Range('B2').FormulaR1C1 = 4 
ws.Range('B3').FormulaR1C1 = 5 
ws.Range('B4').FormulaR1C1 = 6 
#ws.Range('A1:B4').Select() 
ch = ws.Shapes.AddChart().Select() 
xl.ActiveChart.ChartType = c.xlXYScatterLines 
xl.ActiveChart.SetSourceData(Source=ws.Range("A1:B4")) 
#ch.Location(10,10) # something like this? 

如何我可以移动工作表中的图表? enter image description here

回答

3

您可以指定创建图表expression.AddChart(Type, Left, Top, Width, Height)时的位置,请参阅here

如果您不想嵌入图表工作表,您可以创建一个图表工作表:

wb.Worksheets.Add(Type:=xlChart)

警告:Microsoft.interop.Excel不win32com,但应该工作。

相关问题