lcXLS = Sys(5)+Curdir()+'exceldatalabeltest.xls' Create Cursor SampleData (ItemName c(10), v1 i, v2 i, v3 i) For ix=1 To 10 Insert Into SampleData Values ; ('Item'+Transform(ix), Rand()*100, Rand()*100, Rand()*100 ) Endfor Copy To (lcXLS) Type Xls #include xlconstants.h *** set the LOCALEID to English nlLocaleId=Sys(3004) && Save local id =Sys(3006,1033) && We will be sending instructions in English oExcel = Crea('excel.application') With oExcel .workbooks.Open(lcXLS) With .ActiveWorkBook.ActiveSheet oChartRange = .UsedRange .ChartObjects.Add(200, 10, 500, 500) With .ChartObjects(1).Chart .SetSourceData(oChartRange, xlColumns) .hastitle = .T. .haslegend = .T. .ChartTitle.Caption = "Chart Title" .ChartType = xlColumnClustered * Show labels with leader lines .ApplyDataLabels(xlDataLabelsShowValue) *Set label positions For each oSeries in .SeriesCollection With oSeries .DataLabels.Orientation = xlUpward For each oPoint in .Points With oPoint.DataLabel .Top = .Top - 20 EndWith oPoint = .null. Endfor EndWith oSeries = .null. Endfor Endwith Endwith .Visible = .T. Endwith =Sys(3006,Val(nlLocaleId))Cetin