Главная страница
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.012 c
4-22881
AlexanderS
2002-01-22 15:45
2002.04.08
Как получить selected text


1-22666
Goblinus
2002-03-26 10:24
2002.04.08
MDI


4-22896
Serd
2002-02-06 09:59
2002.04.08
Как запретить системные комбинации клавиш?


3-22577
Вика
2002-03-15 13:06
2002.04.08
Автофильтр в Excel


1-22639
SeF
2002-03-27 02:34
2002.04.08
Tresourcestream