Форум: "Основная";
Текущий архив: 2003.02.03;
Скачать: [xml.tar.bz2];
ВнизОбмен данными с Excel Найти похожие ветки
← →
Fill (2003-01-24 21:39) [0]Уважаемы мастера, есть такой вопрос: есть DBGrid1 (пустой), связан с Table1, 3 столбца, 4 строки. Так же есть Excel таблица, в которой есть так же 3 столбца и 4 строки, но они начинаются не с первой ячейки (А1), а с С8, и заканчиваются соответственно с Е11. (Сама таблица начинается с А1). Так вот сам вопрос: как перенести эти данные из ячеек Excel в ячейки DBGrid, уже всю голову сломал, пока ни один метод не помог, может быть кто-то есть поопытней! Только не спрашивайте зачем именно в DBGrid, сам не понимаю – задание такое. Заранее благодарен!
← →
Сергей Чурсин (2003-01-24 23:08) [1]А методы DBGrid никакого
Можно попробовать через BDE+ODBC (что тебе вероятно, и придется сделать, но я это не пробовал), а можно использовать ActiveX automation в обычный Grid.
Вот тебе фрагменты кода из одной моей программки:
var ExOle :OleVariant;
Sheet1, Sheet2, Cells:OleVariant;
....
procedure TForm1.ConnectToExcel;
begin
try
ExOle:=GetActiveOleObject("Excel.Application");
except
ExOle:=CreateOleObject("Excel.Application");
if ExOle.Workbooks.Count<1 then
ExOle.Workbooks.Add;
if ExOle.Workbooks[1].Sheets.Count<2 then
ExOle.Workbooks[1].Sheets.Add("Sheets1");
if ExOle.Workbooks[1].Sheets.Count<2 then
ExOle.Workbooks[1].Sheets.Add("Sheets2");
end;
ExOle.Visible:=true;
end;
....
Sheet1:= ExOle.ActiveWorkbook.Worksheets[s1];
Sheet2:= ExOle.ActiveWorkbook.Worksheets[s2];
....
Sheet1.Cells[y2,c1]:=b;
.....
подробнее по Exel activex-automation смотри help по VBA - только надо его специально проинсталлировать в office.
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2003.02.03;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.007 c