PDA

Ver la Versión Completa : Reemplazar texto de encabezamiento y pie


toni.vi
02-09-2007, 14:37:30
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.


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