![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
|||
|
|||
|
Posicionarme en un lugar concreto del documento
Buenas a todos,
Intento utilizar Word para realizar cartas personalizadas partiendo de datos de un formulario. No es un "mailmerge" porque el origen de datos no es una base de datos, sino campos de un formulario, campos calculados,.... Por tanto en el documento Word no utilizo los campos combinados sino marcadores, que aunque son más torpes me sirven para mis propósitos: Código:
Marcador:='MFecha_Diligencia1'; Contenido:=FechaLiteral(Edit36.Text); if MiDocumento.Bookmarks.Exists(Marcador) then MiDocumento.Bookmarks.Item(Marcador).Range.InsertBefore(Contenido); Código:
// utilizo este marcador para posicionar el cursor en el punto donde queremos
Marcador:='MIntereses1';
Contenido:='';
if MiDocumento.Bookmarks.Exists(Marcador) then MiDocumento.Bookmarks.Item(Marcador).Range.InsertBefore(Contenido);
// creamos un párrafo nuevo por cada año que tiene intereses
if StrToFloat(Edit20.Text)<>0 then // 1999 _________________________________
begin
MiDocumento.Range(EmptyParam, EmptyParam).InsertParagraphAfter;
MiDocumento.Paragraphs.Last.Range.Text:=Format('%8.2m',[StrToFloat(Edit21.Text)]);
end;
if StrToFloat(Edit23.Text)<>0 then // 2000 _________________________________
begin
MiDocumento.Range(EmptyParam, EmptyParam).InsertParagraphAfter;
MiDocumento.Paragraphs.Last.Range.Text:=Format('%8.2m',[StrToFloat(Edit24.Text)]);
end;
....
¿alguien puede darme alguna pista? ¿alternativas? Gracias a todos
__________________
Rafita. |
|
#2
|
|||
|
|||
|
Hola a todos otra vez.
Lo solucioné de forma poco fina: recopilo toda la información en una cadena (String) y sustituyo el marcador por esa cadena. Código:
AcumuladorTexto:='';
// añadimos los intereses de cada año
if StrToFloat(Edit20.Text)<>0 then // 1999 _________________________________
AcumuladorTexto:=AcumuladorTexto+Format('%8.2m',[StrToFloat(Edit21.Text)])+#13;
if StrToFloat(Edit23.Text)<>0 then // 2000 _________________________________
AcumuladorTexto:=AcumuladorTexto+Format('%8.2m',[StrToFloat(Edit24.Text)])+#13;
if StrToFloat(Edit26.Text)<>0 then // 2001 _________________________________
AcumuladorTexto:=AcumuladorTexto+Format('%8.2m',[StrToFloat(Edit26.Text)])+#13;
if StrToFloat(Edit29.Text)<>0 then // 2002 _________________________________
AcumuladorTexto:=AcumuladorTexto+Format('%8.2m',[StrToFloat(Edit29.Text)])+#13;
if StrToFloat(Edit46.Text)<>0 then // 2003 _________________________________
AcumuladorTexto:=AcumuladorTexto+Format('%8.2m',[StrToFloat(Edit47.Text)])+#13;
if StrToFloat(Edit49.Text)<>0 then // 2004 _________________________________
AcumuladorTexto:=AcumuladorTexto+Format('%8.2m',[StrToFloat(Edit49.Text)])+#13;
if StrToFloat(Edit52.Text)<>0 then // 2005 _________________________________
AcumuladorTexto:=AcumuladorTexto+Format('%8.2m',[StrToFloat(Edit53.Text)])+#13;
Marcador:='MIntereses1';
Contenido:=AcumuladorTexto;
if MiDocumento.Bookmarks.Exists(Marcador) then MiDocumento.Bookmarks.Item(Marcador).Range.InsertBefore(Contenido);
Ta'luego ![]()
__________________
Rafita. |
|
#3
|
|||
|
|||
|
use de componente
Hola. yo encontre por ahí un componente excelente que te permite manejar word como quieras. Ahora mismo intente buscarlo en la red. pero no lo encuentro asi que si estas interesado puedes comunicarte conmigo y te lo envio
|
|
#4
|
|||
|
|||
|
Hermano, yo tambien estoy interesado en dicho componente, si puedes envialo al correo [email protected], te agradezco. Chao.
|
|
#5
|
|||
|
|||
|
Hola compañeros,
Efectivamente sí estoy interesado. Puedes mandarmelo a mi cuenta , aunque sería conveniente que pusieses la dirección en este foro, porque supongo que puede haber mucha gente interesada, y de esta forma se la facilitas a más personas. Saludos.
__________________
Rafita. |
|
#6
|
|||
|
|||
|
Hola.
El componente que permitía trabajar word desde delphi, era el WordParaTorpes; y se encontraba en la colección de componentes del Club Delphi. Ahora el club tiene desactivadas varias opciones, como son la seccion de trucos, componentes, ejemplos, etc. Espero que este sea un motivo para que los Moderadores y Responsables de la pagina puedan hacer algo al respecto... He buscado el componente entre mis copias de seguridad y aún no lo encuentro. si eso es realmente lo quieren, no duden en pedirmelo para seguir buscando. Saludos. |
![]() |
|
|
|