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

Вниз

Как вставить строку в док-т Word программно из Д5???   Найти похожие ветки 

 
Barabashka   (2002-04-01 16:00) [0]

если мне надо вставить текст в конкретное место в док-те
пр. надо вставить в 5 строку с 19 позиции...
есть ли какие-либо параметры для Insert?

W := CreateOLEObject("Word.Application"); //Word 8
W.Documents.Open (FileName:="....\oblu.doc");
W.ActiveDocument.Range(Start:=0, End:=0);
W.ActiveDocument.Range.Insert(Text:="Title");


 
AFROLOV   (2002-04-01 16:55) [1]

Должно сработать:

const wdLine=5;
const wdCharacter=1;
const wdMove=0;
...


W.Selection.Start:=W.ActiveDocument.Range.Start;//Устанавливаем Selection в начало документа
W.Selection.End:=W.ActiveDocument.Range.Start;//Снимаем выделение
W.Selection.MoveDown(wdLine, 5,wdMove);//Смещаемся на 5 строк вниз
W.Selection.MoveRight(wdCharacter,19,wdMove);//Смещаемся на 19 позиций в право

W.Selection.TypeText("Мой текст"); // впечатываем свой текст
//или если из буфера то
W.Selection.Paste;
..


Хотя для вставки текста в бланки лучше на позиции в документе не закладываться. Так как такой подход при любом изменении бланка потребует переписывания программы. В Word есть такая штука как FormField - поля которые могут быть проименованы при создании бланка. Тогда вставка текста в такое поле примет вид:

W.ActiveDocument.FormFields.Item("Field1").Result:="Мой текст";





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

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

Наверх




Память: 0.46 MB
Время: 0.007 c
3-46216
Nest
2002-03-22 10:02
2002.04.15
Как программно определить тип ключа (clustered/nonclustered) существующей таблицы в БД?


3-46237
UncleRu
2002-03-16 19:17
2002.04.15
кэширование данных связанных таблиц


1-46302
Дима2
2002-04-02 16:40
2002.04.15
PolyLine


3-46241
Алена
2002-03-24 21:52
2002.04.15
База в одноранговой сети


1-46404
UnDISCOvery
2002-04-02 13:09
2002.04.15
Интерактивный ReSize ! Как ???