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

Вниз

между закладками ;)   Найти похожие ветки 

 
GanibalLector ©   (2005-01-17 02:05) [0]

Цитата :
Если строку необходимо вставить в определенное место в тексте, то делаем закладку: Вставка=>Закладка в меню Word.
Но лучше использовать две закладки: начало текста и конец. Это может понадобиться в случае замены старого текста на новый (обновление данных).


Решил сделать именно так.Вставляю текст между закладками zk1 и zk4. !!!Между закладками  5 пробелов!!!
Делаю так :

var WordApp,Doc2:OleVariant;
i:integer;
begin
try
WordApp:=GetActiveOleObject("Word.Application");
except
WordApp:=CreateOleObject("Word.Application");
end;
 WordApp.Documents.Open("e:\worddoc.doc");
 Doc2:=WordApp.ActiveDocument;
 WordApp.visible:=true;
 for i:=1 to 5 do begin
 sleep(400);
 WordApp.ActiveDocument.Range(Doc2.Bookmarks.Item("zk1").Range.end,
 Doc2.Bookmarks.Item("zk4").Range.start).Text:="F"+inttostr(i);end;
 Doc2:=Unassigned;
 WordApp:=Unassigned;
end;


Уже после первого цикла закладки по непонятным причинам расположены одинаково.И соответственно на выходе : : F5F4F3F2F1  
Что я сделал неверно?Кто может высказаться по сабжу?


 
aus   (2005-01-17 03:46) [1]

Попробуй тоже самое сделать в макросе на VBA и проследи по шагам.

Вообще я предпочитаю писать макросы (их отлаживать легче), а потом запускать из приложения один из них. Хоть VBA и не лучший вариант, но в таком случае для меня удобнее.


 
GanibalLector ©   (2005-01-17 22:15) [2]

Еще варианты есть?


 
YurikGL ©   (2005-01-17 22:35) [3]

попробуй вот так с бубном потанцевать

>  WordApp.ActiveDocument.Range(Doc2.Bookmarks.Item("zk1").Range.end+1,
>  Doc2.Bookmarks.Item("zk4").Range.start-1).Text:="F"+inttostr(i);end;

в разных вариациях


 
Набережных С.   (2005-01-18 09:07) [4]

>Это может понадобиться в случае замены старого текста на новый

А зачем две закладки? В документе выделяешь нужный участок и вставляешь закдадку. Закладка - все выделенное. Потом примерно так:
Doc2.Bookmarks.Item("zk1").Select;
WordApp.Selection.TypeText(newText);


 
YurikGL ©   (2005-01-18 09:12) [5]


> Набережных С.   (18.01.05 09:07) [4]

Тоже верно... закладка же имеет св-во range у которого есть и конец и начало


 
YurikGL ©   (2005-01-18 09:13) [6]


> Набережных С.   (18.01.05 09:07) [4]

Тоже верно... закладка же имеет св-во range у которого есть и конец и начало



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

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

Наверх




Память: 0.48 MB
Время: 0.028 c
2-1127457227
новенький
2005-09-23 10:33
2005.10.23
Сортировка данных


3-1126612004
ilya_ae
2005-09-13 15:46
2005.10.23
Фотографии с БД


14-1128239892
Kerk
2005-10-02 11:58
2005.10.23
Один день


3-1126528673
Борис71
2005-09-12 16:37
2005.10.23
проблемы с добавлением записи в таблицу


14-1127994870
ZeroDivide
2005-09-29 15:54
2005.10.23
Народ, кто программировал цифровушки от Olympus?