Вниз
Скачать: CL | DM;

Как с Delphi заменять определенные слова текста в Word   Найти похожие ветки 

 
Sesh   (2003-07-26 08:39) [0]

Сталкнулся с надобностью замены текста в Word с Delphi, как это реализовать? Киньте маленький примерчик.


 
Leran2003   (2003-07-26 08:55) [1]

WordApp: TWordApplication;

...
uses MyWordUnit;

procedure TMainFrm.Button1Click(Sender: TObject);
var
WordDoc:_Document;
begin

WordApp.Connect;

WordDoc:=OpenWordDoc(WordApp,"c:\...\My1.doc");
ReplaceWordText(WordDoc,"Привет","Пока",true);

SaveWordDoc(WordDoc,"c:\...\My2.doc");

// активизировать приложение
WordApp.Activate;
// максимизировать приложение
WordApp.WindowState:=wdWindowStateMaximize;

WordApp.Disconnect;
end;

...


Мой Unit (писалось чисто для себя):

unit MyWordUnit;
interface
uses
// Word97;
Word2000,Variants;

// открывает документ и возвращает ссылку на него
function OpenWordDoc(WordApp:TWordApplication;S:string):_Document;
// сохранение документа в файл
procedure SaveWordDoc(WordDoc:_Document;S:string);
// поиск - замена текста
procedure ReplaceWordText(WordDoc:_Document;pFind,pRepl:string;All:boolean);
implementation
//-------------------------------
function OpenWordDoc(WordApp:TWordApplication;S:string):_Document;
var
FName:OleVariant;
begin
FName:=S;
Result:=WordApp.Documents.Open(FName,
EmptyParam,
EmptyParam,
EmptyParam,
EmptyParam,
EmptyParam,
EmptyParam,
EmptyParam,
EmptyParam,
EmptyParam,
EmptyParam,
EmptyParam);
end;
//-------------------------------
procedure SaveWordDoc(WordDoc:_Document;S:string);
var
FName:OleVariant;
begin
FName:=S;
WordDoc.SaveAs(FName,
EmptyParam,
EmptyParam,
EmptyParam,
EmptyParam,
EmptyParam,
EmptyParam,
EmptyParam,
EmptyParam,
EmptyParam,
EmptyParam);
end;
//-------------------------------
procedure ReplaceWordText(WordDoc:_Document;pFind,pRepl:string;All:boolean);
var
F,R,D:OleVariant;
begin
F:=pFind;
R:=pRepl;
if All then D:=wdReplaceAll else D:=wdReplaceOne;
WordDoc.Content.Find.Execute(F,
EmptyParam,
EmptyParam,
EmptyParam,
EmptyParam,
EmptyParam,
EmptyParam,
EmptyParam,
EmptyParam,
R,
D,
EmptyParam,
EmptyParam,
EmptyParam,
EmptyParam);
end;

end.


проверенно в 2000, XP, и 97 (здесь нужно будет только снести пару EmptyParam)...



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.02 c
14-20668
berezuev
2003-07-22 19:19
2003.08.07
Как уменьшить размер DELPHI exe-шника? 500Kb - многовато!


7-20834
OpoloXAI
2003-05-23 18:34
2003.08.07
Как переключить раскладку клавиатуры на Украинский язык?


3-20384
azdesign
2003-07-15 00:25
2003.08.07
Чем открыть файлы .dta,.frm,.idx


4-20859
Dmk
2003-06-01 01:28
2003.08.07
Как перечислить все окна над моим?


1-20594
NewJack
2003-07-24 14:31
2003.08.07
Файлы, содержащиеся в директории




   Наверх