![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Подскажите, как из программы передать данные в Excel? [D5, Win2k]
lightix © (2002-02-15 15:09:00)Нужно в конкретную ячейку файла запихнуть данные. Как это сделать?
Набережных С. (2002-02-15 17:55:00) [1]Попробуй перед вставкой преобразовать в WideString.
Иван Шихалев (2002-02-15 16:20:00) [2]Какой вехний предел для
i? И как реагирует на такое:Sheet.Cells[i,j]. Value:= OraQuery1.Fields[j].asString?
lightix (2002-02-15 15:59:00) [3]Поменял () на [] - все равно ошибку выдает.
А если написать в лоб Sheet.Cells[i,j] := "Test" то работает. Но как только в цикле запускаешь - глючит....
Иван Шихалев (2002-02-15 15:54:00) [4]Delphi использует паскалевский синтаксис массивов. То есть вместо
Sheet.Cells(i,j) := OraQuery1.Fields[j].asString, следует писатьSheet.Cells[i,j] := OraQuery1.Fields[j].asString. Правда с координатами ячеек не все так просто. Я предпочитаю использоватьSheet.Cells["A1"], где, естественно,Aи1- могут быть произвольными координатами.
lightix (2002-02-15 15:42:00) [5]Написал вот такое вот и выдает ошибку OLE. Где глюк искать?
while not OraQuery1.EOF do
begin
for j:=0 to OraQuery1.Fields.Count-1 do
begin
Sheet.Cells(i,j) := OraQuery1.Fields[j].asString;
end;
i:=i+1;
OraQuery1.Next;
end;
exl.Application.ActiveWorkBook.Saveas(fileName);
finally
exl.Application.Quit;
end;
drpass (2002-02-15 15:26:00) [6]var
ExcelApplication:variant;
WorkBook:variant;
ExcelApplication:=CreateOleObject("Excel.Application");
Workbook:=ExcelApplication.Workbooks.Add;
Workbook.Worksheets[1].Cells[4,2].Value:="Чего-то";
Workbook.Worksheets[1].Cells[4,2].Formula:="=A1*A3";
ExcelApplication.Quit;