ToExcel

 FUNCTION MAIN
   LOCAL oApp,oWorkBook,oRange
   LOCAL nLine:=3
   DBPUSH()
   TRY
   oApp := CREATEOBJECT( "Excel.Application" ) //попытка создать объект Excel
   CATCH
   ALERT("Excel не доступен!")
   RETURN .F.
   END
 ALTD()
 oWorkBook:=oApp:WORKBOOKS:ADD() //добавление рабочей книги
 oAS:=oWorkBook:WORKSHEETS():ADD() //добавление таблицы
 oAS:NAME:="Test" //присвоение имени таблице
 oRange:=oAS:RANGE("A1:C1") //определение интервала ячеек
 oRange:FONT:BOLD:=.T. //выдленный шрифт на этом интервале
 oRange:MERGECELLS:=.T. //объединение ячеек в интервале
 oRange:VALUE:=OEMTOANSI("Тестовый пример") //запись текста
 oAS:COLUMNS(1):COLUMNWIDTH:=10 //ширина 1-й колонки
 oAS:COLUMNS(2):COLUMNWIDTH:=10 //ширина 2-й колонки
 oAS:COLUMNS(3):COLUMNWIDTH:=20 //ширина 3-й колонки
 SELECT Main
 nLine:=3
 GO TOP
 oAS:RANGE("A2"):FORMULA:=OEMTOANSI("Дт счет") //Запись заголовов столбцов
 oAS:RANGE("B2"):FORMULA:=OEMTOANSI("Кт счет")
 oAS:RANGE("C2"):FORMULA:=OEMTOANSI("Сумма")
 WHILE !EOF()
   oAS:CELLS(nLine,1):VALUE:=HB_OEMTOANSI(Dt_Schet) //Запись в ячейки
   oAS:CELLS(nLine,1):NUMBERFORMAT:="@"
   oAS:CELLS(nLine,2):VALUE:=HB_OEMTOANSI(Kt_Schet)
   oAS:CELLS(nLine,2):NUMBERFORMAT:="@" //текстовой формат
   oAS:CELLS(nLine,3):VALUE:=Summa
   oAS:CELLS(nLine,3):NUMBERFORMAT:="#0,00" //числовой формат
   nLine++
   SKIP
 ENDDO
 oApp:VISIBLE:=.T. //отобразить Excel
 DBPOP()
 RETURN