Форум: "Основная";
Текущий архив: 2002.01.08;
Скачать: [xml.tar.bz2];
ВнизПеренос данных в ячейку листа Excel Найти похожие ветки
← →
Striker (2001-12-13 07:59) [0]Подскажите пожалуйста как какую-нибудь переменную типа string или real записать в заданную ячейку листа EXCEL.(хотелось бы с примером).За ранее благодарен.
← →
perov (2001-12-13 08:21) [1]
ExcelApplication.Connect;
ExcelApplication.Workbooks.Add("", 0);
ExcelWorkbook.ConnectTo(ExcelApplication.ActiveWorkbook);
ExcelWorksheet.ConnectTo(ExcelWorkbook.Sheets[1] as _WorkSheet);
ExcelWorksheet.Activate;
ExcelWorksheet.Cells.Item[j,1].Value := j - i;
ExcelApplication.Visible[0] := True;
← →
KIR (2001-12-13 08:32) [2]Сюда же в догонку вопрос, а как после этого этот XL грамотно закрыть? А то у меня один раз перенос (правда ИЗ Excel"я) работает, а если попытаться еще раз, то - Memory Allocation Error...
← →
perov (2001-12-13 08:44) [3]
ExcelApplication.Disconnect;
← →
Striker (2001-12-13 09:00) [4]Большой Thank"s дома попробую.
← →
KIR (2001-12-13 12:02) [5]>perov
Писал уже
и ExcelApplication.Disconnect,
и ExcelApplication.Quit,
и FreeAndNil(ExcelApplication)...
не помогает, вот кусок кода:
ExcelApplication1.Connect;
ExcelApplication1.WorkBooks.Add(n,0); //n - имя файла
ExcelWorkBook1.ConnectTo(ExcelApplication1.ActiveWorkBook);
{тело программы}
ExcelApplication.WorkBook1.Close;
ExcelApplication1.Disconnect;
← →
perov (2001-12-13 12:33) [6]
ExcelWorksheet.Disconnect;
ExcelWorkbook.Close;
ExcelApplication.Disconnect;
← →
Олег Лаукарт (2001-12-13 13:33) [7]В Королевстве Делфи есть пару статей про работу с Excel
← →
Ынс (2001-12-13 14:32) [8]//добавить в модули еще и этот
uses ComObj;
//...
var
xlApp : Variant;
DataArray : Variant;//двумерный массив тут будет
rv: real;
begin
rv:= 10.56568;
xlApp := CreateOleObject("Excel.Sheet"); //создать
xlApp.Application.Visible := True;
xlApp.Application.Cells[1, 2].Value := "23456346"; //можно так
xlApp.Application.Range["RealValue1"].Value:= rv; {можно и так : "RealValue1" - имя ячейки в "клетках"}
xlApp.Application.Range("A1:B8").Value := "Просто строка для заполнения диапазона"; {заполнение рейнджа одной строкой}
DataArray := VarArrayCreate([0,2,0,2], varVariant);{создадим массив типа вариант для хранения любых значений}
DataArray[0, 0]:= "элемент массива";
DataArray[1, 0]:= 38754;//тоже элемент массива
{присваиваем рейнджу весь массив по ссылке сразу... дешево,надежно и практЫчно =-) = особенно когда нужно в репорт передать массив размером этак тысяч 5 строк... если делать это через цикл for то репорт будет генериться убийственно долго}
xlApp.Application.Range("A1:C3):= DataArray;
//сохраним этот файл для потомков =-)
xlApp.SaveAs("c:\docs\reports\sample1.xls");
DataArray := Unassigned; //заметаем следы
xlApp := Unassigned; //грохнуть и это ...
end;
← →
Striker (2001-12-15 11:06) [9]Я тут порылся и нашел сайт (WWW.afalinasoft.com).Там как раз по взаимодействие Delphi&Excel.
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2002.01.08;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.007 c