Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.02.03;
Скачать: CL | DM;

Вниз

Обмен данными с 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;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.015 c
1-4900
Hif
2003-01-25 17:18
2003.02.03
?


14-5219
Burmistroff
2003-01-15 20:26
2003.02.03
Яркость монитора


8-5071
hedgehoge
2002-10-19 10:25
2003.02.03
ListVeiw - задний фон


1-4865
Nikolai_S
2003-01-24 17:44
2003.02.03
Как использовать функцию LineDDA?


14-5239
Groove
2003-01-16 12:39
2003.02.03
Правила округления чисел