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

Вниз

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

 
DimaIv   (2002-03-25 17:00) [0]

например: найти <Firms> заменить на НазваниеФирмы, причем <Firms> может быть несколько (подключаться к Ворду я умею).


 
AFROLOV   (2002-03-25 17:37) [1]

1. Запускаем Word.
2. Используем Macrorecorder для записи макроса для поиска и замены. - это практически готовое решение с точностью до синтаксиса.
3. Более подробную информацию можно найти в справке по VBA

Держи код который решает эту задачу.

var
MSWord:Variant;
..
begin
..
MSWord:=CreateOleObject("Word.Application");
//настройка параметров для замены
MSWord.Selection.Find.Text = "<Frims>";//То что ты хочешь менять
MSWord.Selection.Find.Replacement.Text = "АО МММ"//То на что ты хочешь менять
MSWord.Selection.Find.Forward = True;
MSWord.Selection.Find.Wrap = wdFindContinue;
MSWord.Selection.Find.Format = False;
MSWord.Selection.Find.MatchCase = False;
MSWord.Selection.Find.MatchWholeWord = False;
MSWord.Selection.Find.MatchWildcards = False;
MSWord.Selection.Find.MatchSoundsLike = False;
MSWord.Selection.Find.MatchAllWordForms = False;
//
MSWord.Selection.Find.Execute Replace:=2;//Поиск и замена





 
DimaIv   (2002-03-25 19:31) [2]

Вот так работает:
var MyWrap,MyforWard,MyReplace,MyOleStr,NewStr:OleVariant;

MyWrap:=wdFindContinue;
MyforWard:=true;
MyReplace:=WdReplaceAll;
MyOleStr:=<Firms>;
NewStr:="АО МММ"

WordDocument1.Range.Find.Execute(MyOleStr,EmptyParam,EmptyParam,EmptyParam,
EmptyParam,EmptyParam,EmptyParam,EmptyParam,EmptyParam,NewStr,MyReplace,EmptyParam,EmptyParam,
MyforWard,MyWraP);


 
Толик ©   (2002-03-27 14:23) [3]

Есть ещё вариант: создаёшь в Ворде свой шаблон документа (для простоты положи его туда же, где лежит Normal.dot), добавляешь в него через Файл-Свойства-Прочие необходимые параметры. Подключаешся к Ворду из Делфей, создаешь документ, но на основании своего шаблона:

uses
Word2000, Office2000;

var
Template, NewTempl, Props: OleVariant;
WordApp: WordApplication;
Doc: WordDocument;
begin
//подключаемся к Ворду
...
//создаём документ на основе своего шаблона
Template := "MyTemplate";
NewTempl := false;
Doc := WordApp.Documents.AddOld(Template, NewTempl);

//а вот дальше у меня через интерфейсы не получилось, поэтому
//воспользуемся OleVariant

Props := Doc.CustomDocumentProperties;
//заполняешь поля своими значениями
for i := 1 to Props.Count do
Props.Item[i].Value := "Название фирмы";
//обновляешь их
Doc.Fields.Update;
end;



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

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

Наверх




Память: 0.47 MB
Время: 0.013 c
1-22621
Dimedrol
2002-03-27 17:37
2002.04.08
TreeView - каждый TNode со своим хинтом...


1-22711
VJar
2002-03-26 20:13
2002.04.08
Свойства файла


1-22729
NS
2002-03-27 04:43
2002.04.08
Копирование файла


4-22883
Turalyon
2002-02-05 11:45
2002.04.08
Текст заголовка окна


1-22638
LiNkS
2002-03-27 21:35
2002.04.08
Types of actual and formal var parameters must be identical