![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
|
|
#1
|
|||
|
|||
|
Здравствуйте!
Делаю экспорт в Excel след. образом: Код:
procedure TForm.BitBtn6Click(Sender: TObject);
var
XL, XArr: Variant;
i: Integer;
j: Integer;
begin
XArr:=VarArrayCreate([1,DM.ADOQuery1.FieldCount],varVariant);
XL:=CreateOLEObject('Excel.Application'); // Создание OLE объекта
XL.WorkBooks.add;
XL.visible:=true;
j := 1;
DM.ADOQuery1.First;
while not DM.ADOQuery1.Eof do
begin
i:=1;
while i<=DM.ADOQuery1.FieldCount do
begin
XArr[i] := DM.ADOQuery1.Fields[i-1].Value;
i := i+1;
end;
XL.Range['A'+IntToStr(j),CHR(64+DM.ADOQuery1.FieldCount)+IntToStr(j)].Value := XArr;
DM.ADOQuery1.Next;
j:=j+1;
end;
XL.Range['A1',CHR(64+DM.ADOQuery1.FieldCount)+IntToStr(j)].select;
XL.Selection.Font.Name:='Arial';
XL.Selection.Font.Size:=10;
XL.selection.Columns.AutoFit;
XL.Selection.HorizontalAlignment:=2;
XL.Selection.Borders.LineStyle:=2;
end;В таблице формирую 25 полей. При нажатии кнопки открывается Excel и вылетает ошибка OLE Error 800A03EC и показывает ошибку на строке Код:
XL.Range['A'+IntToStr(j),CHR(64+DM.ADOQuery1.FieldCount)+IntToStr(j)].Value := XArr; P.S. Delphi7+MSSQL2005 Последний раз редактировалось fluxion, 28.04.2008 в 05:22. |
|
#2
|
||||
|
||||
|
Вообще то все должно работать.
Полагаю ошибка где то выше этой строки. Может быть что то с данными. Последний раз редактировалось Professor Farnsworth, 24.04.2008 в 17:56. |