Форум: "Начинающим";
Текущий архив: 2008.06.08;
Скачать: [xml.tar.bz2];
ВнизДоступ из delphi в Microsoft Word Найти похожие ветки
← →
Sloosar (2008-05-17 11:18) [0]Я занимаюсь программированием и паралельно пишу отчёты для родителей. Но меня задалбывает каждый раз всё писать и я подумал автоматизировать этот процес.
Полазил по интернету нашёл простой способ доступа из Делфи в Ворд но у меня есть пару вопросов по этой теме.
← →
Sloosar (2008-05-17 11:20) [1]вот пример кода
// ñîçäàåì ýêçåìïëÿð âîðäà
wordapp:=cowordApplication.Create;
// äåëàåì åãî âèäèìûì
WordApp.Visible:=true;
// øàáëîí
template:="Normal";
// ñîçäàòü øàáëîí
OpenAsTemplate:=false;
// ÷òî-òî òèïà îïåðàòîðà with, ìîæíî áûëî è íàïðÿìóþ îáðàòèòüñÿ
Docs:=WordApp.Documents;
// äîáàâëÿåì äîêóìåíò
Doc:=Docs.AddOld(template,OpenAsTemplate);
// âûäåëèòü âñå
ARange:=Doc.Range(EmptyParam,EmptyParam);
// ìàññèâ ïàðàãðàôîâ
pars:=doc.Paragraphs;
// ïåðåìåííàÿ - ïàðàìåòð
template:=arange;
// íîâûé ïàðàãðàô
par:=pars.Add(template);
// öâåò çåëåííûé
par.Range.Font.ColorIndex:=1;
// âñòàâëÿåì òåêñò
par.Range.Font.Bold:=5;
par.Range.Font.Underline:=1;
par.Range.Font.Size:=16;
par.Range.InsertBefore("Àêò");
Вопрос
№1 как сделать что бы текст выводился по центру?
← →
Savek (2008-05-17 12:22) [2]par.Range.ParagraphFormat.Alignment := wdAlignParagraphCenter
← →
Сергей М. © (2008-05-17 15:41) [3]"Родители", о коих ты печещься, "требуют" от тебя, сына, отчеты ? И именно в формате Ворда ?
← →
Sloosar (2008-05-17 16:26) [4]можна и не в формате ворда.
← →
Сергей М. © (2008-05-17 16:31) [5]
> Sloosar (17.05.08 16:26) [4]
А мданные для отчета откуда берутся ?
← →
Сергей М. © (2008-05-17 16:32) [6]И насколько нам важно знать , для родителей тебе нужен отчет или, к примеру, для налоговой или для господа бога ?)
← →
Sloosar (2008-05-17 17:04) [7]Сергей М.
Данные отчёта вводятся с программы.
А отчёты нужны Для Господа Бога.
← →
Sloosar © (2008-05-17 17:13) [8]Вообще у меня существует 3 виды отчёта. И все они пишутся по одному и тому самому сценарию.
← →
Сергей М. © (2008-05-17 17:31) [9]
> Данные отчёта вводятся с программы
Уточнение ценнейшее, слов нет.
> отчёты нужны Для Господа Бога
Честно признаться, ни разу еще не интересовался у него шаблонами)
> у меня существует 3 виды отчёта. И все они пишутся по одному
> и тому самому сценарию
С чем тебя и поздравляем.
Нам это очень интересно, сколько их там у тебя)
← →
Sloosar © (2008-05-17 19:57) [10]А как можно загрузить в ComboBox данные из ini файла или собственного файла? Искал по сайту не нашол :-(
← →
TStas © (2008-05-19 00:08) [11]По большому счету есть всего два способа делать что-то в Ворде из внешней программы:
1) Замена по шаблону. Т. е. беред некий документ, в нем какие-то части объявляем шаблоном и из заменяем на свои данные. Это хорошо, если многое в документе остаётся одним и тем же. (Пример: устав фирмы. Там почти всё одинаково у всех, меняется лишь название, учредители и т. д.)
2) Создание документа с нуля. Это годится, например, для доверенности, т. е. небольшого документа, у которого меняется всё. (Создать шаблон доверенности можно, но не нужно, т. к. он получится из одного слова)
Вариант (1) - это строковая замена в Ворде. Ворд чудестно понимает команду заменить строку на другую строку. Тут удобно, что он там сам с регистрами букв разбирается.
Какой способ выбрать - зависит от задачи.
← →
ANB (2008-05-19 12:42) [12]
> TStas © (19.05.08 00:08) [11]
Первый вариант очень тормозной и неудобный. Часто бывают глюки.
Стас, я же рассказывал тебе про вордовые поля. Очень шустро и без глюков.
← →
Stas © (2008-05-19 13:56) [13]Sloosar © (17.05.08 19:57) [10]
Может для автоматизации попробывать использовать BD вместо ini файлов
и FR вместо Word"a ?
← →
ANB (2008-05-19 14:17) [14]
> и FR вместо Word"a ?
Попробуй сказать об этом юзеру :)
← →
Stas © (2008-05-19 14:23) [15]тому самому из Sloosar (17.05.08 17:04) [7] ?
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2008.06.08;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.044 c