I keep getting errors where xlCategory
, xlValue
and xlPrimary
are not recognised in my python script.
I am trying to label the axes of my graph and was successfully doing so yesterday with this code:
chart = excel.Charts.Add() chart.Name = "Chart Title" chart.ChartType = -4169 #xlXYScatter chart.SetSourceData(firstSheet.Range("$A:$B")) series = chart.SeriesCollection(1) series.Name = "Series Name" chart.Axes(win32com.client.constants.xlCategory).HasTitle = True chart.Axes(win32com.client.constants.xlCategory).AxisTitle.Caption = "x Axis" chart.Axes(win32com.client.constants.xlValue).HasTitle = True chart.Axes(win32com.client.constants.xlValue).AxisTitle.Caption = "y Axis"
This produced the following error:
Traceback (most recent call last): File "", line 1, in startGraphBuild() File "C:\Python33\InCAS_Study_Analysis\VMDvsMODVMDG.py", line 33, in startGraphBuild chart.Axes(win32com.client.constants.xlCategory).HasTitle = True File "C:\Python33\lib\site-packages\win32com\client\__init__.py", line 170, in __getattr__ raise AttributeError(a) AttributeError: xlCategory
So I tried this from this stackoverflow question changing axis labels in excel 2007 charts using python win32com:
pAxis = chart.Axes(AxisGroup = xlPrimary) xAxis = pAxis(1) yAxis = pAxis(2) xAxis.HasTitle = True yAxis.HasTitle = True xAxis.AxisTitle.Caption = "VMD" yAxis.AxisTitle.Caption = "MOD VMD"
But this produced the following error:
Traceback (most recent call last): File "", line 1, in startGraphBuild() File "C:\Python33\InCAS_Study_Analysis\VMDvsMODVMDG.py", line 37, in startGraphBuild pAxis = chart.Axes(AxisGroup = xlPrimary) NameError: global name 'xlPrimary' is not defined
Has anyone else experienced this? Since it was working yesterday I have tried restarting everything, uninstalling and reinstalling pyWin but these haven't worked.
I am using Python 3.3 and Excel 2010.