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 wgamarrac@yahoo.es, 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
|
|||
|
|||
Respuesta
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. |
|
|
|