Здравствуйте!
Подскажите, как жестко указат тип ячейки, в которую я хочу вставить данные (вставляю текст '000001', а в Экселе получается число 1).
Вот мой код:
| Код | procedure Export2Excel; var ExcelApp: Variant; ExcelDoc: Variant; ExcelSht: Variant; R: Integer; begin try // Создаем сервер автоматизации Excel ExcelApp:=CreateOleObject('Excel.Application'); // Временно скрываем приложение Excel ExcelApp.Visible:=False; // Добавляем документ ExcelDoc:=ExcelApp.Workbooks.Add; // Добавляем рабочую страницу ExcelSht:=ExcelDoc.WorkSheets.Add; // Копируем информацию // Выводим информацию в ячейку ExcelSht.Cells[1, 1]:='Номер КД'; ExcelSht.Cells[1, 2]:='Область'; ExcelSht.Cells[1, 3]:='Район'; ExcelSht.Cells[1, 4]:='Индекс'; ExcelSht.Cells[1, 5]:='Насел. пункт'; ExcelSht.Cells[1, 6]:='Улица'; ExcelSht.Cells[1, 7]:='Актуальный долг'; R:=1; ResultQ.First; while not ResultQ.Eof do begin R:=R+1; ExcelSht.Cells[R, 1]:=ResultQ.FieldByName('contr_num').AsString; ExcelSht.Cells[R, 2]:=ResultQ.FieldByName('region').AsString; ExcelSht.Cells[R, 3]:=ResultQ.FieldByName('district').AsString; ExcelSht.Cells[R, 4]:=ResultQ.FieldByName('zip').AsString; ExcelSht.Cells[R, 5]:=ResultQ.FieldByName('town').AsString; ExcelSht.Cells[R, 6]:=ResultQ.FieldByName('street').AsString; ExcelSht.Cells[R, 7]:=ResultQ.FieldByName('actual_debt').AsInteger; ResultQ.Next; end;
if not VarIsEmpty(ExcelApp) then ExcelApp.Visible := True; // Очищаем ресурсы ExcelApp := UnAssigned; except end; end;
|
Добавлено через 3 минуты и 8 секунд Спасибо, уже http://forum.vingrad.ru/topic-38839.html. |