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

Вниз

Прочитать скопированные из Excel в буфер обмена данные   Найти похожие ветки 

 
msgipss   (2007-03-27 17:39) [0]

Здравствуйте знатоки, вопрос, можно ли разобрать данные из буфера обмена, скопированные туда с листа excel. Вопрос возник из проблемы высокопроизводительного чтения данных и оформления содержимого Excel.
Есть ли у кого ни будь удачный опыт программно считать (например таблица 100 на 100 ячеек с листа excel) менее чем за 2 сек (комп p4), на опыте получается 15-20 сек.
Т.е. идея скопировать активный диапазон в буфер обмена, а потом его разобрать в delphi  - может будет быстрее.

Заранее спасибо за любую информацию по данному вопросу

PS уж очень не хочется переносить часть логики на уровень vba документа (а там можно получить такую производительность)

тема начала освещаться в ветке http://delphimaster.net/view/10-1174398087/


 
S@shka ©   (2007-03-27 17:44) [1]

Бррр....
открываешь в Delphi
xls - документ и делаешь все что тебе нужно

(поиском посмотри  - совсем недавно здесь было)

Автоматизация Excel в Delphi


 
msgipss   (2007-03-27 18:13) [2]

S@shka ©   (27.03.07 17:44) [1]
Наверное я некорректно объяснил, сорри.
В том то и дело что я использую автоматизацию, и хочу использовать дальше, но чтение содержимого листа происходит достаточно долго *(


 
evvcom ©   (2007-03-27 18:19) [3]

> [2] msgipss   (27.03.07 18:13)

Тебе читать надо не поячеечно, и даже не построчно, а диапазон целиком, т.е. в 2-мерный массив. См. VarArrayCreate.


 
evvcom ©   (2007-03-27 18:22) [4]

> [3] evvcom ©   (27.03.07 18:19)

Сорь. VarArrayCreate для передачи в Excel. Для чтения просто Value := Range[...], а потом по нему, как по 2-мерному массиву бегай (ну если Range выберешь 2-мерный)


 
evvcom ©   (2007-03-27 18:25) [5]

> [0] msgipss   (27.03.07 17:39)
> Есть ли у кого ни будь удачный опыт программно считать (например
> таблица 100 на 100 ячеек с листа excel) менее чем за 2 сек

Передаем обычно в Excel 10-20 столбцов х несколько тыс. строк. Обычно дольше запрос отрабатывает и Excel грузится, а передачу заметить не успеваем.


 
Krants   (2007-03-27 18:29) [6]

при занесении в буфер таблицы, Excel заносит ее как табулированную таблицу, т.е. колонки разделяются "табами", а строки,- и есть строки...


 
Macrodens ©   (2007-03-28 09:53) [7]

таб = #9



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

Текущий архив: 2007.05.20;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.048 c
2-1178190219
allucard
2007-05-03 15:03
2007.05.20
Повторный вызов Print криво печатает компоненты Shape


15-1177397126
WondeRu at work
2007-04-24 10:45
2007.05.20
Рефакторинг в Delphi


2-1178102376
Neket
2007-05-02 14:39
2007.05.20
Колличество строк


10-1133181083
nippo
2005-11-28 15:31
2007.05.20
COM Object из ТСomponent


3-1173133245
Mr. D.
2007-03-06 01:20
2007.05.20
Невозможность снять привелегии с SYSDBA в IBExpert