Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Servers
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 18-08-2008
juliobuitrago juliobuitrago is offline
Miembro
 
Registrado: jun 2006
Posts: 37
Poder: 0
juliobuitrago Va por buen camino
Como insertar una tabla en un lugar especifico....WORD

Si, el problema es que ya todo me funciona.
tengo una plantilla, con sus campos definidos, y el programa me crea un doucmento word sustituyendo las variables que le pongo.

Hay un post donde me escribieron como e sque puedo vaciar una tabla en un doucmento word, y no lo he probado, aunque estoy seguro que funcionará.
Pero el problema es el siguiente.

Esta tabla debe contruirse en el medio del documento, en la hoja del medio.

En el mismo documento word.

Inicio del Documento
Este es el texto del documento
Este es el texto del documento
Este es el texto del documento
Este es el texto del documento
Este es el texto del documento

Aqui la tabla..

Este es el texto del documento
Este es el texto del documento
Este es el texto del documento
Este es el texto del documento
Este es el texto del documento
Este es el texto del documento

Fin del documento.....

Alguna idea, por favor..........cómo puedo yo hacer esto...


Por desgracia, este es el ultimo paso para dar por concluido el proyecto.

Saludos

Fdo
Responder Con Cita
  #2  
Antiguo 22-09-2008
solecito solecito is offline
Miembro
 
Registrado: jul 2006
Posts: 10
Poder: 0
solecito Va por buen camino
Tal vez te sirva poner un marcador en la plantilla en el lugar donde quieres vaciar la tabla y solo posicionarte en él sin la necesidad de modificar el resto del documento.
Responder Con Cita
  #3  
Antiguo 02-10-2008
juliobuitrago juliobuitrago is offline
Miembro
 
Registrado: jun 2006
Posts: 37
Poder: 0
juliobuitrago Va por buen camino
Eso es lo que quiero

Pero....cómo manipulo el marcador......dentro del documento, desde delphi,,,?, ahi está el lio, c hacer todo lo demás, pero no esto, me ayudas, ?
Responder Con Cita
  #4  
Antiguo 02-10-2008
solecito solecito is offline
Miembro
 
Registrado: jul 2006
Posts: 10
Poder: 0
solecito Va por buen camino
Lo manipulas desde delphi, te agrego un ejemplo de como insertar un marcador en el documento, él cual lo puedes definir desde tu plantilla y solo posicionarte en él y agregar el texto.

Ahora si solo quieres posicionarte en el marcador, puedes utilizar esta instrucción:
WordApplication1.Selection.GoTo_(What, Which, Count, bkmkname);
y agregar el texto.



Código Delphi [-]
 
procedure TForm1.AbreWord(Sender: TObject);
var
  z, linea, step : Olevariant;
  DOCFileName,NewDOCFileName,ItemIndex:OleVariant;
begin
  DOCFileName := EmptyParam;
  NewDOCFileName := True;
  ItemIndex := 1;
  CoInitialize(nil);
  WordApplication1.Connect;
  wordApplication1.Visible := true;
  if FFileName<>'' then DOCFileName :=FFileName;
  NewDOCFileName := False;
  WordApplication1.Documents.Add(DOCFileName, NewDOCFileName,Emptyparam,emptyparam);
  WordDocument1.ConnectTo(WordApplication1.Documents.Item(ItemIndex));
  WordApplication1.Options.CheckSpellingAsYouType := False; //Desactivar comprobacion de ortografia
  WordApplication1.Options.CheckGrammarAsYouType := False;
  WordDocument1.Range.InsertParagraphAfter;
  with WordFont1 do
  begin
    ConnectTo( WordApplication1.Selection.Font );
    if checkbox1.Checked then // elige si es cursiva o normal el tipo de letra
      Italic := 1
    else
      Italic := 0;
  end;
  WordApplication1.Selection.Range.Set_Text(Edit1.Text); // agrega cualquier texto 
  z:=wdMove;
  linea := wdCharacter;
  step := length(edit1.Text);
  WordApplication1.Selection.MoveRight(linea,step,z) ;
end;
 
 
procedure TForm1.SetTextBookmark(BookmarkName,newText: string);
var
  bkmkName: OleVariant;
begin
  bkmkName := BookmarkName;
  WordDocument1.Bookmarks.Item(bkmkName).Select;
  WordApplication1.Selection.Set_Text(newText);
  self.InsertBookmark(BookmarkName,'');
end;
 
procedure TForm1.InsertBookmark(BookmarkName,BookmarkText: string);
begin
  if BookmarkName <> '' then
    WordDocument1.Bookmarks.Add(BookmarkName, EmptyParam);
  if BookmarkText <> '' then
    self.SetTextBookmark(BookmarkName,BookmarkText);
end;
 
procedure TForm1.Button2Click(Sender: TObject);
begin
  AbreWord; 
  InsertBookmark(edit2.text,Edit3.text); // edit2 es el nombre del marcador y el edit3 es texto que contendrá el marcador.
end;
Responder Con Cita
Respuesta



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
Insertar una Tabla en Word adebonis Servers 0 15-12-2007 07:53:28
mostrar un menu pop-up en un lugar especifico del FORM Greco Varios 3 29-11-2007 20:56:31
Insertar filas en Tabla(word) Loviedo Servers 2 14-11-2007 00:12:40
Cómo insertar un salto de página a word desde delphi? nacho Servers 3 08-03-2005 21:02:16
Como insertar datos de una tabla en otra tabla? Salomon Firebird e Interbase 1 28-08-2003 11:29:40


La franja horaria es GMT +2. Ahora son las 07:37:13.


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