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

Вниз

Работа с MS Word через TWordApplication   Найти похожие ветки 

 
Nikolai_S ©   (2003-08-25 10:24) [0]

Пытаюсь сделать замену текста в файле MS Word из Delphi 7 (Windows XP, Office XP)

uses WordXP (или word2000);
...
var
FindText, ReplaceWithText, ReplaceParam, Wrap, varFalse, varTrue: OleVariant;
begin
FindText := "Текст";
ReplaceWithText := "Новый текст";
ReplaceParam := wdReplaceAll;
Wrap := wdFindContinue;
varFalse := False;
varTrue := True;
WordApplication.Selection.Find.Execute(FindText, varFalse, varFalse, varFalse, varFalse, varFalse, varTrue, Wrap, varFalse, ReplaceWithText, ReplaceParam, varFalse, varFalse, varFalse, varFalse);

end;


При вызове метода WordApplication.Selection.Find.Execute выдается следующая ошибка:

Project lic_registry.exe raised exception class EOleException with message "Заглушке переданы неправильные данные". Process stopped. Use Step or Run to continue.

В чем может быть проблема?


 
Nikolai_S ©   (2003-08-25 11:18) [1]

???


 
Романов Р.В. ©   (2003-08-25 11:27) [2]

Проверь соответствует ли количество и значения параметров в этой функции описанию в спавке по VB для Word XP


 
Nikolai_S ©   (2003-08-25 11:46) [3]

Соответсвует. Мало того, я записал макрос в MS Word и оттуда по аналогии взял все параметры для метода Find.Execute.


 
Nikolai_S ©   (2003-08-25 13:08) [4]

???


 
Darrin ©   (2003-08-25 13:54) [5]

В D6 работает следующий код:

with Wordapp.Documents.Application do
begin
Selection.Find.ClearFormatting;
Selection.Find.Replacement.ClearFormatting;
With Selection.Find do
begin
Forward:= True;
Wrap:= wdFindContinue;
Format:= False;
End;
With Selection.Find do
begin
Text:= "[DOGOVORNO]";
n:=n+1;
Replacement.Text:=inttostr(n);
End;
FindText:="[DOGOVORNO]";
Selection.Find.Execute(FindText,EmptyParam,EmptyParam,EmptyParam,Empty Param,
EmptyParam,Forward,EmptyParam,EmptyParam,EmptyParam,Replace,EmptyParam ,
EmptyParam,EmptyParam,EmptyParam);

End;


 
Nikolai_S ©   (2003-08-25 16:53) [6]

Вся беда в том, что когда у меня был устанволены Win2000 + Office 2000, то все работало. Теперь же у меня установлены WinXP + OfficXP и D6 + D7.

В Win2000 все работало, в WinXP все перестало работать и пошли какие-то странные ошибки.

>Darrin
Мой код, подобный твоему исправно работал в Win2000. А теперь (в Win XP) не работает. Твой также не работает.


 
Карелин Артем ©   (2003-08-25 16:59) [7]

Может стоит перейти на закладки, которые стабильно работают в 97,2000 и ХР офисах??


 
Романов Р.В. ©   (2003-08-25 17:21) [8]


> Nikolai_S ©

Ты справку для офиса ХП читал? Там эта функция есть? Параметры у нее такие же?



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

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

Наверх




Память: 0.48 MB
Время: 0.014 c
3-24377
Дмитрий Бессонов
2003-08-15 18:59
2003.09.08
Восстановление данных


6-24594
Jao
2003-07-02 14:58
2003.09.08
Indy. TidTCPClient - где ошибка?


6-24575
zep
2003-07-06 12:51
2003.09.08
Разрыв Dial-Up соединения


3-24328
Dush
2003-08-18 16:17
2003.09.08
Помогите со структурой таблицы


6-24601
ximik
2003-07-02 00:51
2003.09.08
Outlook Express и Delphi