Ver Mensaje Individual
  #1  
Antiguo 27-07-2004
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.293
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
Cita:
Empezado por roman
Siento mucho haber tenido que editar este mensaje.

El presente hilo contenía mensajes que correspondían a una pregunta distinta de la original por lo que juzgué conveniente moverlos a un nuevo hilo pero la pregunta original había quedado en el nuevo hilo por lo cual decidí editar este mensaje para anexar la pregunta original de modo que no se pierda el contexto.

Disculpen las molestias
Cita:
Empezado por Ryar
Buenas, estoy pasando dantos desde delphi a excel, mediante ole con el siguiente codigo (Es un codigo de prueba):

Código Delphi [-]
uses
...ComObj, OleServer;

procedure TForm1.Button1Click(Sender: TObject);
var
  ExcelApp: OLEVariant;
  fichero: string;
begin
  ExcelApp := CreateOleObject('Excel.Application');
  try
    fichero:=ExtractFilePath(ParamStr(0))+'Plantilla.xls';
    ExcelApp.Workbooks.Open(fichero);
    ExcelApp.cells.item[7,'I']:=strtoint(Edit1.Text);
    ExcelApp.cells.item[8,'I']:=20;
    ExcelApp.Worksheets[1].PrintOut;
  finally
    if not VarIsEmpty(ExcelApp) then
    begin
    ExcelApp.Quit;
    ExcelApp := Unassigned;
    end;
  end;
end;

Me pasa los datos, me recalcula las celdas, me lo imprime y me lo cierra correctamente, pero.. me sale la ventana de "Desear guardar los cambios realizados en Plantilla.xls" del Excel, dandome als opciones de si, no y cancelar. Como hago para que acepte automaticamente la de "No", puesto que mi documento de excel es una plantilla para imprimir, y no quiero que se guarden nunca los datos.

Saludos, y muchas gracias
Prueba poniendo (antes del Quit):
Código Delphi [-]
  ExcelApp.DisplayAlerts := False;

Otra posibilidad es:
Código Delphi [-]
var:
  LCID:Integer;
begin
...
  LCID := GetUserDefaultLCID;
  ExcelApp.DisplayAlerts[LCID] := False;
__________________
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.

Última edición por roman fecha: 28-07-2004 a las 19:21:36.
Responder Con Cita