Главная страница
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.031 c
2-1178098759
Washington
2007-05-02 13:39
2007.05.20
Надо закрыть доступ к 2-м файлам.


2-1177920614
Regent
2007-04-30 12:10
2007.05.20
ПЕРЕВЕСТИ Дробное число в строку.


2-1177569722
UMU
2007-04-26 10:42
2007.05.20
DBEdit


15-1176874493
homm
2007-04-18 09:34
2007.05.20
Кодировка: PHP MySQL


15-1177035048
Slider007
2007-04-20 06:10
2007.05.20
С днем рождения ! 20 апреля