Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Servers
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 06-10-2011
Jose Manuel Jose Manuel is offline
Miembro
 
Registrado: may 2003
Posts: 112
Poder: 21
Jose Manuel Va por buen camino
Hyperlink en Word desde Delphi 2007

Hola, busco ayuda para solucionar el siguiente problema. En un form tengo 2 campos, un titulo y una dirección web y quiero que Delphi 2007 cree un documento WORD generando un HIPERLINK con estos 2 campos, me funciona todo menos la instrucción para crear el HIPERLINK.

Código Delphi [-]
procedure TfbNot.btn_crear_wordClick(Sender: TObject);
var
texto1:string;
begin

 WordApplication1.Connect;
 WordApplication1.Visible:=True;
 WordDocument1.NewInstance; //Crear el doc
 WordFont1.ConnectTo(WordDocument1.Content.Font);
 WordFont1.Bold := 2;
 WordFont1.Name := 'Arial';
 WordFont1.Size := 11;
 //*****************************************************************************
 Texto1:='Prueba';
 WordDocument1.Content.InsertAfter(Texto1);
 WordDocument1.Tables.Add (WordDocument1.Words.Last,14,2,EmptyParam,EmptyParam); // nº de columnas y filas a crear
 WordDocument1.Tables.Item(1).Cell(2,1).Range.Text := c_web.text;      // link
 WordDocument1.Tables.Item(1).Cell(3,1).Range.Text := m_noticias.text; // noticia
 WordDocument1.Tables.Item(1).Cell(4,1).Range.Text := c_fuente.text;   // fuente
 //*****************************************************************************
 // Aquí esta el problema, quiero poner un hiperlink para la celda (1,1,), con 2 edits: c_web.text  y   c_titulo.text;

 WordDocument1.Hyperlinks.add( WordDocument1.Tables.Item(1).Cell(1,1).Range, c_web.text, '','',c_titulo.text);

 // este es el error: Types of actual and formal var parameters must be identical

 WordApplication1.DisConnect;
end;

Un saludo y muchas gracias a todos.
Jose Manuel.
Responder Con Cita
  #2  
Antiguo 12-10-2011
Jose Manuel Jose Manuel is offline
Miembro
 
Registrado: may 2003
Posts: 112
Poder: 21
Jose Manuel Va por buen camino
Delphi - Hyperlink a Word

He conseguido resolver una parte del problema, pero ahora me surge otro. El hiperlink se crea bien en la COLUMNA 1, pero en la columna 2 se descompone y se graba en la columna 1 a continuación del hiperlink de la columna 1.
Si alguien tiene alguna idea o sugerencia, será bienvenida.
Un saludo
Jose Manuel

Código Delphi [-]
procedure TfbNot.btn_crear_wordClick(Sender: TObject);
var
texto1:string;
Range: Variant;
Address:OLEvariant;
TextToDisplay:OLEvariant;
nombredoc : OleVariant;
f,c:integer;
begin

 WordApplication1.Connect;
 WordApplication1.Visible:=True;
 WordDocument1.NewInstance; //Crea un documento nuevo
 WordDocument1.PageSetup.Orientation  := wdOrientPortrait;
 WordDocument1.PageSetup.LeftMargin   := 42.55; //Puntos (1,5 centímetros)
 WordDocument1.PageSetup.RightMargin  := 42.55; //Puntos (1,5 centímetros)
 WordDocument1.PageSetup.TopMargin    := 42.55; //Puntos (1,5 centímetros)
 WordDocument1.PageSetup.BottomMargin := 56.70; //Puntos (2 centímetros)

 WordFont1.ConnectTo(WordDocument1.Content.Font);
 WordFont1.Bold  := 1;
 WordFont1.Name  := 'Arial';
 WordFont1.Size  := 20;
 WordFont1.Color := clMaroon;
 Texto1:='Boletín De Noticias';
 WordDocument1.Content.InsertAfter(Texto1);

 WordDocument1.Tables.Add (WordDocument1.Words.Last,4,2,EmptyParam,EmptyParam); // nº de columnas y filas a crear
 Range := WordDocument1.Tables.Item(1).range;
 Range.font.bold  := 1;
 Range.font.Name  := 'Book Antiqua';
 Range.font.size  := 10;
 Range.font.color := wdDarkBlue;
 Range.ParagraphFormat.Alignment := wdAlignParagraphJustify;// Center; Right;

// CELDA fila, columna  ********************************************************************
// comprobar que hemos creado las celdas
for f := 1 to 1 do
 for c := 1 to 2 do
 begin
 Range := WordDocument1.Tables.Item(1).Cell(f,c).range;
 Address        := trim(c_web.text);
 TextToDisplay  := trim(m_titulo.text);
---> aquí está el proablema, el hiperlink solo se crea bien en la COLUMNA1, falla en la 2
 WordDocument1.Hyperlinks.Add(Range, ADDRESS, EmptyParam, EmptyParam, TextToDisplay, EmptyParam);
 range.InsertAfter(chr(13)+chr(13)+m_noticias.text+#13+#13+c_fuente.text);
---> el resto del texto de la celda se graba correctamente, solo falla el HyperLink en la columna 2
 end;

 WordDocument1.Range.InsertParagraphAfter;
 WordDocument1.Paragraphs.Last.Range.Text :=' aquí va el pie de pagina ';

 WordApplication1.DisConnect;
end;
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
word 2007 y delphi pabloloustau Varios 0 30-01-2010 22:07:16
Como crear Documento Word en Delphi 2007 Bertifox2008 Internet 2 28-11-2008 20:14:13
delphi 2007 exportar word, excel, txt vroa74 OOP 9 27-09-2008 03:04:36
word desde delphi creedence Varios 5 07-02-2008 10:18:27
Word desde Delphi Silvia Servers 0 05-04-2005 10:45:17


La franja horaria es GMT +2. Ahora son las 13:30:22.


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
Copyright 1996-2007 Club Delphi