> FOR ifw= 1 to nWSF > With oExcel > .DisplayAlerts= .F. > IF wanted > .WorkBooks.Open(laFileListWS [ifw,1],1) > .Visible= .F. > FOR itabor = 1 to .ActiveWorkBook.WorkSheets.Count && creating list xl > iDime= iDime+.ActiveWorkBook.WorkSheets.Count > DIMENSION aTheDMDxls(iDime) > iArrayElement= iArrayElement+ 1 > aTheDMDxls(iArrayElement)= laFileListWS [ifw,1]+"\"+ALLTRIM(.ActiveWorkBook.ActiveSheet.Name) > StandardLbl= "StandardLabel"+ALLTRIM(STR(iArrayElement)) > IF iArrayElement < 55 && Limit to 54 worksheet selections > _screen.ActiveForm.&StandardLbl..Caption= IIF(iArrayElement<10, ; > " "+ALLTRIM(STR(iArrayElement))+ " ", ; > PADR(ALLTRIM(STR(iArrayElement)),3))+ ; > aTheDMDxls(iArrayElement) > _screen.ActiveForm.&StandardLbl..Visible= .T. > ENDIF > _screen.ActiveForm.Refresh > .ActiveWorkBook.WorkSheets(m.iTabor).Activate > .range("A3").select() > .ActiveWorkbook.PublishObjects.Add(xlSourceSheet, "C:\Some1.htm", .ActiveWorkBook.ActiveSheet.Name, ; > "", xlHtmlStatic, "Book1_12385", _screen.ActiveForm.&StandardLbl..Caption) > .Publish (.t.) > .AutoRepublish = .f. > ENDFOR > ENDIF > EndWith > ENDFOR > _screen.ActiveForm.Caption= "Excel Chart List" > READ events > oExcel.Quit > Release oExcel >>
with .ActiveWorkbook.PublishObjects.Add( ... ) .Publish(.t.) .AutoRepublish=.f. && Default .f. - no need for this one endwithie:
* 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 = "Product" .Cells(1,2).Value = "AMount" .Cells(1,3).value = "Quota" .Cells(2,1).Value = "Prod1" .Cells(2,2).Value = 12000 .Cells(2,3).value = 11000 .Cells(3,1).Value = "Prod2" .Cells(3,2).Value = 45000 .Cells(3,3).value = 48000 .Cells(4,1).Value = "Prod3" .Cells(4,2).Value = 37000 .Cells(4,3).value = 38000 oChart = .ChartObjects.Add(0, 0, 500, 200) oChart.Chart.chartwizard(.range(.Cells(1,1),.Cells(4,3)),xl3DColumn,4,1,0,1,1,"","","","") Endwith With oChart.Chart .hastitle = .t. .haslegend = .t. .ChartTitle.caption = "This is chart title" .plotby = 2 #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 && Show 90 degrees rotated - clockwise Endwith Endwith #Define xlSourceChart 5 #Define xlHTMLStatic 0 #Define xlHTMLChart 3 ox.activeworkbook.PublishObjects.Add(xlSourceChart, "C:\temp\myXLExportSample.htm", ; ox.activeworkbook.worksheets(1).name,.Parent.Name, ; xlHTMLStatic, "", "Published From Excel").Publish(.t.) Endwith ox.activeworkbook.saved = .t. && Suppress save dialog ox.quit && Quit excel =sys(3006,val(nlLocaleId))Cetin