Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.11.06;
Скачать: CL | DM;

Вниз

работа с вордом   Найти похожие ветки 

 
natik   (2005-10-14 20:07) [0]

Такая вот проблема:
нужно сделать заполнение вордовских шаблонов(вставка из базы данных на места закладок), сохранение и распечатку заполненных документов. На word 2000 все работает без проблем, а вот с Office Xp возникает проблема: файл создается, созраняется, а потом возникает ошибка "Microsoft Word - обнаружена ошибка" с предложением отправить отчет в майкрософт...Как с
этим бороться?

+++++++++++++++++++++++++++++++++++
unit winword;{модуль для работы с вордом}
interface
procedure Wopen(filename:string);
procedure Wrun;
procedure Wsearch(data:string);
procedure Winsert(info:string;_italic:boolean);
procedure WQuit;
procedure Wclose;
procedure WSave(Name:string);
procedure WPrint;

implementation
uses Olectnrs,comobj;
var MsWord:Variant;

procedure WOpen(fileName:string);
begin
try  MsWord.Documents.Add(fileName{,EmptyParam});
except  WError(2,"файл не найден"); end;
end;

procedure WRun;
begin
try  MsWord:=CreateOleObject("Word.Application");
    MsWord.Visible:=False;
    except  Werror(1,"Microsoft Word не установлен");
    end;
end;

procedure Wsearch(data:string);
var What,Which,Count,Name:OLEVariant;
begin
What:=-1;
Which:=unAssigned;
Count:=unAssigned;
Name:=data;
MsWord.Selection.GoTo(What,Which,Count,Name);
end;

procedure Winsert(info:string;_italic:boolean);
begin
MsWord.Selection.Font.italic:=_italic;
MsWord.selection.TypeText(info);
end;

procedure WQuit;
begin
MsWord.Quit;
end;

procedure WClose;
begin
MsWord.Documents.Close;
end;

procedure WSave(Name:string);
begin
MsWord.ActiveDocument.SaveAs(FileName:=Name);
end;

procedure WPrint;
begin
MsWord.ActiveDocument.Print;
end;
end.

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
{вот так используется}
Wrun;
Wopen("c:\program files\my.dot");//открытие шаблона
...
Wsearch("data1"); Winsert("record 1", false);
...
Wsave("c:\program files\new.doc");
{печать}
Wclose;  //закрытие документа
WQuit;  //закрыть word
end;


 
Гость22   (2005-10-14 20:17) [1]

Попробуй вот это: http://www.kornjakov.ru/stat.htm#s0
Сам когда-то намучился с закладками, то теперь перешел на простую подмену в самом документе.


 
natik   (2005-10-15 19:43) [2]

да я не совсем про работу с закладками спрашиваю,  так-то в общем все даже работает, только с вордом XP возникает ошибка при его закрытии...(ворд 2000 - без проблем все работает как надо).  Может для XP какая другая команда должна быть?



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

Текущий архив: 2005.11.06;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.056 c
4-1125749990
NikNet
2005-09-03 16:19
2005.11.06
Предворительная проверка процесса!


3-1127748273
avsam
2005-09-26 19:24
2005.11.06
Свой TQuery


3-1127813135
Wolferio
2005-09-27 13:25
2005.11.06
Удаление всех записей в базе.


1-1128930294
SnakeAK
2005-10-10 11:44
2005.11.06
Прозрачность TImage.


3-1127551148
Виталька2005
2005-09-24 12:39
2005.11.06
Paradox и сетевой доступ