Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Servers (https://www.clubdelphi.com/foros/forumdisplay.php?f=9)
-   -   Reemplazar texto de encabezamiento y pie (https://www.clubdelphi.com/foros/showthread.php?t=47608)

toni.vi 02-09-2007 14:37:30

Reemplazar texto de encabezamiento y pie
 
Desde hace tiempo que utilizo el código de abajo y me funciona bien para reemplazar textos en word, pero ahora me han pedido que reemplace texto que está en el encabezamiento de word, y no lo hace.
Como se puede reemplazar?.
Trozo de Código.

SearchText := vTextoOrigen;
ReplaceText := vTextoCambiar;
Wrap := wdFindContinue;
All := wdReplaceAll;
WordDocument1.Content.Find.Execute(SearchText, EmptyParam, EmptyParam, EmptyParam,
EmptyParam, EmptyParam, EmptyParam, Wrap,
EmptyParam, ReplaceText, All);

Saludos
Toni

toni.vi 03-09-2007 11:47:27

Reenvio el codigo completo.

procedure TForm1.Button1Click(Sender: TObject);
var
Word: Variant;
FileName: OleVariant;
begin

Word := CreateOleObject('Word.Application');

FileName := 'C:\Documento.doc';
Word.Documents.Open(FileName, EmptyParam, EmptyParam, EmptyParam,
EmptyParam, EmptyParam, EmptyParam, EmptyParam,
EmptyParam, EmptyParam);
Word.Visible := True;

Word.Selection.Find.ClearFormatting;
Word.Selection.Find.Text :='texto a reemplazar';
Word.Selection.Find.Replacement.Text := 'texto reemplazado';
Word.Selection.Find.Forward := True;
Word.Selection.Find.Wrap := wdFindContinue;
Word.Selection.Find.Format := False;
Word.Selection.Find.MatchCase := False;
Word.Selection.Find.MatchWholeWord := False;
Word.Selection.Find.MatchWildcards := False;
Word.Selection.Find.MatchSoundsLike := False;
Word.Selection.Find.MatchAllWordForms := False;//False;
Word.Selection.Find.Execute (EmptyParam, EmptyParam, EmptyParam,
EmptyParam, EmptyParam, EmptyParam,
EmptyParam, EmptyParam, EmptyParam,
EmptyParam, wdReplaceAll, EmptyParam,
EmptyParam, EmptyParam, EmptyParam);
end;

argami 16-10-2007 10:36:50

Espero que esto te sirva.

Código:

hdr :Olevariant;
//conseguir la cabecera recordad que la cabecera es unica para todo el documento.
Hdr := Word.ActiveDocument.Sections.Item(1).Headers.Item(1).Range;

//Busqueda normal
Hdr.Find.Execute(EmptyParam, EmptyParam,EmptyParam,
                                  EmptyParam, EmptyParam, EmptyParam,
                                  EmptyParam, EmptyParam,
                                  EmptyParam, EmptyParam, Replace);

Saludos


La franja horaria es GMT +2. Ahora son las 05:50:34.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi