Вниз
Скачать: CL | DM;

Перевод информации из файла .xls в stringgrid   Найти похожие ветки 

← →
sashok   (2004-01-27 17:55) [0]

У меня возник такой вапрос:
мне нужно каким-то образом быстро перевести инфу из excel"евского файла в stringgrid. Что значит быстро - если я перевожу по ячейке, то это очень долго (поскольку у меня в этом файлике около 6*21000 ячеек).
Как бы мне это сделать?


← →
Тимохов ©   (2004-01-27 18:05) [1]

1. Разбирать формат хранения файла в Excel (гиблое дело).
2. Сохранить в excel в виде текста. Потом разбирать.
3. Через оле.
4. Еще есть DDE (не знаю что это)

Все.


← →
sashok   (2004-01-27 18:09) [2]

Через "оле" - это как?


← →
Тимохов ©   (2004-01-27 18:12) [3]


> инфу из excel"евского файла в stringgrid. Что значит быстро
> - если я перевожу по ячейке, то это очень долго (поскольку
> у меня в этом файлике около 6*21000 ячеек).

А ты сам-то как это делаешь?
Не через OLE?


← →
MadGhost ©   (2004-01-27 18:17) [4]

да луче все таки в cvs файл из екселя перевести, а там уж парсить проще простого


← →
sashok   (2004-01-27 18:20) [5]

Я беру ExcelApplication и ExcelWorkBook, подключаю, далее чтото типа:
While ExcelWorkBook1.Cells.Items[i,1]<>"" then
Begin
For j:=1 to 6 do
StringGrid1.Cells[j,i-1]:=ExcelWorkBook1.Cells.Items[i,j].Value;
inc(i);
End;


← →
sashok   (2004-01-27 18:40) [6]


> да луче все таки в cvs файл из екселя перевести, а там уж
> парсить проще простого

а поточнее можно?


← →
Тимохов ©   (2004-01-27 18:43) [7]


> Я беру ExcelApplication и ExcelWorkBook, подключаю, далее
> чтото типа:
> While ExcelWorkBook1.Cells.Items[i,1]<>"" then
> Begin
> For j:=1 to 6 do
> StringGrid1.Cells[j,i-1]:=ExcelWorkBook1.Cells.Items[i,j].Value;
> inc(i);
> End;

Это и есть OLE :))) Только скрыто от тебя. Это самый медленный путь.


> > да луче все таки в cvs файл из екселя перевести, а там
> уж
> > парсить проще простого

Открой excel попробуй сохраниться в разных форматах (там и туева хуча), выбери, что тебе больше нарвиться и парси...


← →
MadGhost ©   (2004-01-27 18:45) [8]

cvs эт формат где каждая ячейка будет разделена запятой, или ; точкой с запятой, так что распарсить проблем не составит


← →
sashok   (2004-01-27 18:45) [9]

Ладненько, это я уже пробую.
Пасиба за ответы



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.017 c
1-16424
kiril-
2004-01-28 13:16
2004.02.06
Класс по имени


4-16801
Sergey SP
2003-11-28 15:17
2004.02.06
Выбрать пункт меню


3-16109
3APA3A
2004-01-15 23:49
2004.02.06
Как в DBGrid засунуть данные из нескольких таблиц?


14-16723
fag2000
2004-01-16 10:49
2004.02.06
Книги по ораклу


1-16292
Sash
2004-01-26 07:07
2004.02.06
Handle окна




   Наверх