Ver Mensaje Individual
  #2  
Antiguo 23-06-2006
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - Espańa
Posts: 18.288
Reputación: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Para crear una hoja nueva en la plantilla a partir de la que hay puedes usar éste código:

Código Delphi [-]
uses
  Activex, ComObj;

procedure TForm1.Button1Click(Sender: TObject);
var
  excel : olevariant;
begin
  // Crear el objeto 
  excel := CreateOLEObject('Excel.Application');
  // Acceder a la plantilla
  excel.workbooks.open('c:\temp\plantilla.xlt');
  // Seleccionar la hoja
  excel.sheets[1].select;
  // Copiar la hoja seleccionada
  excel.sheets[1].copy(EmptyParam, excel.sheets[1]);
  // desactivar alertas para que no avise de que vas a guardar sobre la misma plantilla
  Excel.DisplayAlerts := False;
  // Guardar en el mismo XLT
  excel.activeWorkBook.SaveAS('C:\Temp\plantilla.xlt');
  // Cerrar
  excel.workbooks.Close;
  // liberar
  Excel := Unassigned;
end;

Funciona perfectamente con Excel 2003; Espero que no tengas problemas con versiones anteriores.
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita