Показать сообщение отдельно
Старый 27.04.2006, 15:00   #12  
Владимир Максимов is offline
Владимир Максимов
Участник
КОРУС Консалтинг
 
1,712 / 1201 (44) ++++++++
Регистрация: 13.01.2004
Записей в блоге: 3
Ну, "до кучи". Импорт из EXCEL через буфер обмена

PHP код:
static void Imort_from_Excel(Args _args)
{
    
FileName                fileName "C:\\Моя директория\\Мой файл.xls";

    
COMExcelDocument_RU     excel;
    
TextBuffer                         textBuffer;
    
MSOfficeBookMark_RU     bookMark;
    
TransDate                        nextDate;
    
COM                                workRange;
    ;

    
excel = new ComExcelDocument_RU();
    
excel.newFile(fileName,false);

    
// В диапазон включаем только ячейки одного столбца
    
bookMark "A1:A20";

    
// Копируем содержимое диапазона в буфер обмена
    
workRange   excel.findRange(bookMark);
    
workRange.copy();
    
textBuffer  = new TextBuffer();
    
textBuffer.fromClipboard();
    
// Если необходимо выбрать из диапазона только НЕ пустые значения, то
    
while (textBuffer.nextToken())
    {
        
info(textBuffer.token());
    }

    
// Если необходимо выбрать из диапазона ВСЕ значения, включая пустые, то
    
textBuffer.fromClipboard();
    while (
textBuffer.nextToken(false,"\n"))
    {
        
info(strRem(textBuffer.token(),"\r"));
    }


Достоинства - высокая скорость
Недостатки - буфер обмена возвращает данные только в символьном виде. Переводить в нужный тип данных придется вручную
За это сообщение автора поблагодарили: konopello (1).