* Part of xlChartType constants #define xl3DArea -4098 #define xl3DColumn -4100 #define xl3DLine -4101 #define xl3DPie -4102 #define xlArea 1 #define xlBubble3DEffect 87 #define xlLine 4 #define xlPie 5 #define xlRadar -4151 #define xlSurface 83 *** set the LOCALEID to English nlLocaleId=sys(3004) && Save local id =sys(3006,1033) && We will be sending instructions in English ox = crea('excel.application') ox.workbooks.add() with ox.activeworkbook.worksheets(1) .Cells(1,1).Value = "NumProd1" .Cells(1,2).Value = "AMount" .Cells(1,3).value = "Quota" .Cells(2,1).Value = 113 .Cells(2,2).Value = 12000 .Cells(2,3).value = 23 .Cells(3,1).Value = 254 .Cells(3,2).Value = 45000 .Cells(3,3).value = 24 .Cells(4,1).Value = 165 .Cells(4,2).Value = 37000 .Cells(4,3).value = 42 ox.charts.add() ox.charts(1).chartwizard(.range(.cells(1,1),.cells(4,3)),xl3DColumn,4,1,0,1,1,"","","","") endwith with ox.charts(1) .hastitle = .t. .haslegend = .t. .ChartTitle.caption = "This is chart title" .ChartType=xl3DArea && Set a charttype .plotby = 2 * Now play with chart format #define xlCategory 1 #define xlValue 2 #define xlSeriesAxis 3 With .Axes(xlValue) .HasTitle = .T. with .AxisTitle .Caption = "This is Rotated Value title" .Font.Size = 10 .Font.Bold = .f. .Orientation = 90 && 90 degrees rotated title endwith EndWith .charttype = xl3DLine && Change charttype in between .PrintOut && Print chart endwith oX.activeworkbook.saved = .t. && Suppress save dialog oX.quit && Quit excel =sys(3006,val(nlLocaleId))Cetin