Page 1 of 1

Cómo detectar no haber salvado libro de Excel? (SOLUCIONADO)

Posted: Sun Aug 17, 2025 5:56 pm
by Armando
Amigo:

Tengo el siguiente código

Code: Select all | Expand

   cDir	:= cGetDir("Elija la carpeta donde guardar el archivo !",)

   CursorWait()

   IF ! Empty(AllTrim(cDir))
      oExcel:Get("ActiveWorkBook"):SaveAs(cDir + "\" + oVar:FIL)
   ELSE
      MsgInfo("El usuario decidió no guardar el archivo !",oApp:cAplicacion)
   ENDIF

   oSheet:=NIL
   oExcel:Quit()
   oExcel:=NIL
En este código se pide al usuario especifique donde desea guardar el archivo Excel recién creado,
si el usuario lo especifica se guarda el archivo y se cierra la hoja y salimos de Excel, hasta ahí todo
excelente.

Si el usuario decide no conservar el archivo, se envía el mensaje de su decisión pero al final el archivo
se queda en memoria y excel se queda esperando a que el usuario decida guardar o no el archivo.

Pregunta. desde mi aplicación, ¿ cómo "le digo" a Excel que el usuario decidió no conservar el archivo ?
y no se quede esperando

Saludos a todo el foro

Re: Cómo detectar no haber salvado libro de Excel?

Posted: Sun Aug 17, 2025 9:07 pm
by Enrico Maria Giordano
This is all you need:

Code: Select all | Expand

   cDir	:= cGetDir("Elija la carpeta donde guardar el archivo !",)

   CursorWait()

   IF ! Empty(AllTrim(cDir))
      oExcel:ActiveWorkBook:SaveAs(cDir + "\" + oVar:FIL)
   ELSE
      MsgInfo("El usuario decidió no guardar el archivo !",oApp:cAplicacion)
      oExcel:ActiveWorkbook:Close( .F. )
   ENDIF

   oExcel:Quit()
These are not needed:

Code: Select all | Expand

oSheet:=NIL

Code: Select all | Expand

oExcel:=NIL

Re: Cómo detectar no haber salvado libro de Excel?

Posted: Tue Aug 19, 2025 3:37 am
by Armando
Enrico:

Perfecto !, funcionó al 100%

Muchas gracias, Saludos