Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Потрепаться";
Текущий архив: 2002.05.20;
Скачать: [xml.tar.bz2];

Вниз

Delphi + Excel   Найти похожие ветки 

 
Martyn   (2002-04-08 15:34) [0]

Добрый день всем!

Возникла смешная ситуация, даже не могу себе представить, с чем связана...:))))

Есть база (InterBase), по запросу строится прайс-лист, грузится COM-server Excel куда выбрасывается прайс, упаковывается в ZIP-архив и выбрасывается получателям....:)

Вопрос следущий: если в прайсе наименований меньше, чем 1365, то все отлично, а если больше, то при формировании файла price.xls доходит до 1365 позиции и на ней виснет мертво....

Кто мне расскажет, что это за число такое интересное - 1365...:)))

Буду признателен за инфу..

Игорь Мартынов.


 
Alx2   (2002-04-08 15:55) [1]

>Кто мне расскажет, что это за число такое
>интересное - 1365...:)))

1365 г. – 1369 г. КРЕСТОВЫЙ ПОХОД ПЕТРА I ЛУЗИНЬЯНА, КОРОЛЯ КИПРСКОГО :)


 
Виктор Щербаков   (2002-04-08 16:02) [2]

Была когда-то в точноси такая же проблема. На каком-то по счету вызове метода Excel, он виснет. Предложить конструктивное решение проблемы никто не смог. Пришлось разбивать на несколько файлов меньших размеров.


 
AFROLOV   (2002-04-08 16:02) [3]

А какой у тебя офис? У меня была та же проблема в 97. Послое перехода на 2000 все стало как надо. Короче это глюк от Microsoft. Таких сюрпризов в офисе полно. Попытайся ServicePack установить, может поможет.


 
AFROLOV   (2002-04-08 16:08) [4]

Если идея Виктора Щербакова © верна(Excel падает после некоторого количества вызовов его методов), то подход может быть такой: делаем некоторое количество действий(их число значительно меньше критического), сохраняем результаты работы, закрываем Excel, снова запускаем Excel, продолжаем с ним работать.


 
Виктор Щербаков   (2002-04-08 16:14) [5]

Хм. И у меня проблема была на 97-м офисе. Надо будет (ради интереса) попробовать 2000.


 
Mike S   (2002-04-08 16:43) [6]

Windows 2000 SP2 Eng, Delphi 6 SP2, Office 97 SP2
>3800 строк = работает


 
Deus   (2002-04-08 17:14) [7]

2Martyn:
А ты данные выгружаешь построчно или всё сразу.
У меня есть точно такая программа, и я там сначала подготавливал в памяти блок данных, копировал в буфер, а потом делал Paste в Excel. Так как она работает на сервере, то ничего страшного в порче буфера нет.
Всё работает ОК.


 
Martyn   (2002-04-09 10:04) [8]

для Deus

Данные выгружаются построчно, офис 2000, винда 98, стояла NT - все было проще, но пришлось перейти на 98 в связи с отсутствием в NT USB-интерфейса...



 
Deus   (2002-04-09 10:15) [9]

2Martyn:
Построчно выгружать большое кол-во строк - последнее дело. Попробуй, как я написал: через клипбоард. Могу кинуть кусок кода, если хочешь.


 
Praco   (2002-04-09 10:25) [10]

Попробуй выгружать массивом:

ArrayData := VarArrayCreate([1,100,1,19], varVariant);
Cell1 := WorkBook.WorkSheets[1].Cells[n+5-vi+1, 1];
Cell2 := WorkBook.WorkSheets[1].Cells[n+5, 19];
Range := WorkBook.WorkSheets[1].Range[Cell1, Cell2];
Range.Value := ArrayData;

На Королевстве Дельфи есть несколько статей.
Правда, у меня и построчно не было проблем со строкой 1365. D3, Win 98, Excel 97. 3000~4000 строк
Были другие глюки, Excel не выгружался :))


 
Martyn   (2002-04-10 10:42) [11]

2Praco:

То, что не выгружается Excel - это проблемв Win9x, в NT все выгружалось без проблем....

Попробую, может че и выйдет



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

Форум: "Потрепаться";
Текущий архив: 2002.05.20;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.009 c
14-64832
LazorenkoX
2002-04-11 17:44
2002.05.20
KOL


4-64884
VID
2002-03-20 11:33
2002.05.20
Работа с иконками в system tray


3-64476
Юляша
2002-04-21 08:25
2002.05.20
Каскадное удаление


4-64863
Serd_hhc
2002-03-17 13:47
2002.05.20
Запись в реестр.


3-64555
Termik
2002-04-23 18:00
2002.05.20
Простой вопрос.





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский