Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2008.08.31;
Скачать: [xml.tar.bz2];

Вниз

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

 
Dimich1978   (2008-07-23 13:11) [0]

Все открыл я файл из дЕльфи вордовский, расставил поля, теперь не могу удалить определенные строки из файла средствами Делфи.
Уточнение:
строки которые надо удалять всегда постоянны.
необходимо удалить строку и на место её вставить определенную строку из другого файла.
Какую операцию нужно сотворить. Чтобы это можно было сделать.

Вот мой код
Помогите ламеру....
function CentimetersToPoints(a:Single):Single;
begin

{Converts a measurement from centimeters to points (1 cm = 28.35 points).
Returns the converted measurement as a Single.
Syntax
expression.CentimetersToPoints(Centimeters)
expression Optional. An expression that returns an Application object.
Centimeters Required Single. The centimeter value to be converted to points.}

 Result:=28.35*a;

end;

Function VisibleWord (visible:boolean):boolean;
begin
VisibleWord:=true;
try
W.visible:= visible;
except
VisibleWord:=false;
end;
End;

Function CreateWord:boolean;
begin
CreateWord:=true;
try
W:=CreateOleObject("Word.Application");
W1:=CreateOleObject("Word.Document")
except
CreateWord:=false;
end;
End;

Function FindAndPasteTextDoc
(findtext_,pastetext_:string): boolean;
begin
FindAndPasteTextDoc:=true;
try
 W.Selection.Find.Forward:=true;
 W.Selection.Find.Text:= findtext_;
 if W.Selection.Find.Execute then begin
  W.Selection.Delete;
  W.Selection.InsertAfter (pastetext_);
  W.
 end else FindAndPasteTextDoc:=false;
except
 FindAndPasteTextDoc:=false;
end;
End;

procedure TForm1.Button2Click(Sender: TObject);
begin
if opendialog1.Execute then
begin
 CreateWord;
 W.Application.Documents.Open(opendialog1.FileName);
 VisibleWord(true);
 W.ActiveDocument.PageSetup.TopMargin := CentimetersToPoints(0.75);
 W.ActiveDocument.PageSetup.BottomMargin := CentimetersToPoints(0.2);
 W.ActiveDocument.PageSetup.LeftMargin := CentimetersToPoints(0.5);
 W.ActiveDocument.PageSetup.RightMargin := CentimetersToPoints(0.5);
 W.ActiveDocument.PageSetup.Gutter := CentimetersToPoints(0);
 W.ActiveDocument.PageSetup.HeaderDistance := CentimetersToPoints(1.27);
 W.ActiveDocument.PageSetup.FooterDistance := CentimetersToPoints(1.27);
end;
end;


 
DFT   (2008-07-23 15:16) [1]

Вот выдрал из VBA:
к примеру стоит наш текущий курсор в начале документа, и необходимо как-то изменить третью строку...

   Selection.MoveDown Unit:=wdLine, Count:=3 //перемещаемся на три строки вниз
   Selection.EndKey Unit:=wdLine, Extend:=wdExtend //выделяем всю строку
   Selection.TypeText Text:="123" // вводим новый текст

Скорее всего только так. Насколько я знаю, доступа к отдельным строкам документа через программный интерфейс нет.

На будущее. Если нужно что-нибудь программно реализовать, и не знаешь как, то воспользуйся записью макросов. Сделай все необходимые действия вручную (в режиме записи макроса), а потом посмотри на код, который сгененрировался (Alt+F11).



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

Форум: "Начинающим";
Текущий архив: 2008.08.31;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.006 c
2-1216778114
brother
2008-07-23 05:55
2008.08.31
помогите с алгоритмом


3-1204266576
Barsky
2008-02-29 09:29
2008.08.31
Правильный запрос на FireBird SQL


2-1216901204
webpauk
2008-07-24 16:06
2008.08.31
MdiChild


15-1215668193
tesseract
2008-07-10 09:36
2008.08.31
Ну вот, кто присмотрит за смотрящими ?


2-1216929349
mephisto
2008-07-24 23:55
2008.08.31
Динамические фреймы





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский