powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Delphi i Word
16 сообщений из 16, страница 1 из 1
Delphi i Word
    #32137296
Papka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Vsem privet!

Pitajus sdelat chto-to tapa print servera dlja skladskoj progi, rabotajussej pod DOS.
DOS proga sozdajet textovije faili v opredelennuju direktoriju. V Worde sozdani shabloni dlja kazhdogo vida raspechatki. Print server po shablonu faila (tipa z*.inf) sozdajet novij dokument v Worde ispolzuja sootvetstvujussij shablon. Vse rabotajet normalno, poka net neobhodimosti zapolnit tablicu s bolshim kolichestvom strok (~5000). Zapolnjaju tablicu v cikle. Proishodit zhutkij tormoz. Tablica zapolnjajetsa ~20min. Word zapuskaju cherez CreateOleObject. Mozhet u kogo jest idei kak sokratit vremja zapolnenija?
...
Рейтинг: 0 / 0
Delphi i Word
    #32137477
Седов А.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Нельзя вызывать методы и свойства OLE объекта в цикле львиная доля времени(более 90%) уходит на вызов, а не на передачу данных.
Если у Вас таблица - используйте Excel, и предварительно создав вариантный массив сразу !одним оператором! пихайте его в Excel.
Может та же фишка пройдёт и вордовской таблицей.
...
Рейтинг: 0 / 0
Delphi i Word
    #32137545
Papka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
A kakim operatorom eto mozhno sdelat v Excel-e?
...
Рейтинг: 0 / 0
Delphi i Word
    #32137553
Фотография KirillovA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
создаешь вариантный массив:
var toDeBillGates :Variant;
Range :Variant;
...
toDeBillGates := VarArrayCreate([Table1.RecordCount, 1, Table1.FieldCount], varVariant);
...
засовываешь в него данные
...
определяешь размеренность ячеек в Range
...
и потом
Range.Value := toDeBillGates
все.
...
Рейтинг: 0 / 0
Delphi i Word
    #32137572
Фотография KirillovA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
поправка:
toDeBillGates := VarArrayCreate([1, Table1.RecordCount, 1, Table1.FieldCount], varVariant);
...
Рейтинг: 0 / 0
Delphi i Word
    #32137753
Papka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
S Word pohozhe ne funciklirujet. Tam u Range parameter Text.
Peredaju array, a v otvet Type mismatch. Moget kto znajet kak eto obojti?
...
Рейтинг: 0 / 0
Delphi i Word
    #32137757
Фотография KirillovA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В ворд нельзя массивы передавать имхо. я про ексель писал.
...
Рейтинг: 0 / 0
Delphi i Word
    #32137780
Papka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Poluchajetsa variantov nikakih. Ili Excel ili nikak.
...
Рейтинг: 0 / 0
Delphi i Word
    #32137786
Фотография KirillovA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
сделай в екселе - чтоб его.
можно извратиться конечно и напрямую rtf генерить - я где-то когда-то видал чужие компоненты для юзания этого - но щас под рукой нету.
я б сделал генерацию htm'ки - которую бы из ie сохранял а потом, грузил бы ее в ворд ...
быстро и кайфово.... имхо.
...
Рейтинг: 0 / 0
Delphi i Word
    #32137800
Артем1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В Word ведь можно вставить лист Excel.
Может так получится?
...
Рейтинг: 0 / 0
Delphi i Word
    #32137802
Фотография KirillovA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
очепятка была ...
генерил бы htm'ку и грузил бы в ворд ...
никакого заглюченного и тормозного оле
...
Рейтинг: 0 / 0
Delphi i Word
    #32137808
Papka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ja s htm voobsse mjagko govorja na vi. Da i k tomu zhe u menja tam v shablone jesse i Bookmarki propisani, Headeri-Footeri. Nu voobssem ZHOPA!
Budu probovar Excel. Nu kakoj mudak v Microsofte pridumal, chto v Excel massivi mozhno sovat, a v Word - net?
...
Рейтинг: 0 / 0
Delphi i Word
    #32137812
Фотография KirillovA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
дык ексель ето - массив - таблица со строками (записями) и дырками (полями) ... а генерация htm и загрузка его в ворду - самый быстрый (по скорости работы) вариант - правдо геморный по написанию - но тут уж звиняй...
...
Рейтинг: 0 / 0
Delphi i Word
    #32138014
Фотография Cat2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Можно вставить в документ строку и преобразовать в таблицу.
Типа, на VBA

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
ActiveDocument.Bookmarks( "bm1" ).Range.Text = _
 "t~t~t~t~t~t~t~t~t~t"  & Chr( 13 ) & Chr( 10 ) & _
 "t~t~t~t~t~t~t~t~t~t"  & Chr( 13 ) & Chr( 10 ) & _
 "t~t~t~t~t~t~t~t~t~t"  & Chr( 13 ) & Chr( 10 )


ActiveDocument.Range _
(Start:=ActiveDocument.Bookmarks( "bm1" ).Start, _
End:=ActiveDocument.Bookmarks( "bm2" ).Start).Select

    Selection.ConvertToTable Separator:= "~" , _
        NumColumns:= 11 , NumRows:= 3 , AutoFitBehavior:=wdAutoFitFixed
    With Selection.Tables( 1 )
        .Style =  "Naoea oaaeeou" 
        .ApplyStyleHeadingRows = True
        .ApplyStyleLastRow = True
        .ApplyStyleFirstColumn = True
        .ApplyStyleLastColumn = True
    End With


Я с Вордом не работаю, и наверняка с точки зрения спеца, текст корявый.
...
Рейтинг: 0 / 0
Delphi i Word
    #32138268
Papka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>Cat2

Dumaju chto i etot variant ne poluchitsa osobo bistrim. Budem kopat Excel. V principe: tablica - Excel, text - Word. Che-to mne tak kazhetsa. :)
...
Рейтинг: 0 / 0
Delphi i Word
    #32139237
Фотография Cat2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дык все и говорят, что ексель лучше. А работать будет быстро. Повотряюсь, больше всего времени уходит на соединение с OLE, а не на передачу данных
...
Рейтинг: 0 / 0
16 сообщений из 16, страница 1 из 1
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Delphi i Word
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]