Buenas tardes, foreros.
Estoy desesperado. Llevo varíos días haciendo pruebas y buscando información por google y no encuentro por ninguna parte como se puede hacer esto.
Necesito copiar el contenido de una tabla de un documento Word en otra tabla de otro documento Word.
He conseguido abrir los dos documentos de Word a la vez y copiar una tabla, pero cuando intento pegar la información, lo hace en el documento original, con lo que me salen las mismas celdas de la tabla dos veces.
Os dejo una copia del código que estoy utilizando por si le podéis echar un vistazo y me podéis decir qué estoy haciendo mal:
Código Delphi
[-]
WordApplication1.ShowMe;
AvanceDoc := WordApplication1.Documents.Open(AvanceFile, EmptyParam, EmptyParam,
EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam,
EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam);
InformeDoc := WordApplication1.Documents.Open(InformeFile, EmptyParam, EmptyParam,
EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam,
EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam);
for I := 1 to AvanceDoc.Tables.Count do begin
AvanceTable := AvanceDoc.Tables.Item(i);
for j := 0 to AvanceTable.Columns.Count - 1 do
begin
for k := 0 to AvanceTable.Rows.Count - 1 do
begin
AvanceTable.Cell(k, j).Select; WordApplication1.Selection.Copy; InformeDoc.Activate;
InformeTable := InformeDoc.Tables.Item(i);
InformeTable.Cell(k, j).Select;
InformeTable.Cell(k, j).Range.Paste; end;
end;
end;
WordApplication1.ShowMe;
SaveChanges := wdDoNotSaveChanges;
WordApplication1.Quit(SaveChanges, EmptyParam, EmptyParam);