VFP-EXCEL

18/07/2003 - 00:48 por Mauricio U. | Informe spam
Amigos

Duda sobre VFP-Excel

Estoy enviando una tabla a excel desde VFP y todo funciona OK.

Al dar la siguiente instrucción :

excel1.Activeworkbook.SAVEAS(("archivo.xls"))

Me manda un messagebox de excel advirtiendome que el archivo ya existe.

Efectivamente ya existe y lo que yo quiero es que el usuario haga un
overwrite ya que es una hoja electrónica temporal. Entonces sobra esa
advertencia. Alguien sabe cual es la orden para que sobreescriba sin
advertir la presencia del archivo

Mil gracias

Mauricio U.
 

Leer las respuestas

#1 Jesus Rojas
18/07/2003 - 01:54 | Informe spam
Mauricio

Lo que yo te recomendaría es que primero verifiques si el archivo existe,
pero debes hacer lo siguiente :

1.- verificar si existe
2.- Tratar de abrir el archivo a bajo nivel de manera exclusiva con fopen()
de este modo :
nControlador = FOPEN("c:\mifile.xls",2) &&& esto trata de abrir el
archivo de manera exclusiva
IF nControlador<>-1
üLOSE(nControlador)
ERASE c:\mifile.xls
Endif

ATENCION (LEER IMPORTANTE)
- Si el nControlador es diferente de -1 quiere decir que ha podido abrir
el archivo de manera exclusiva, esto
significa que nadie tiene abierto el archivo
- Es importante cerrar el archivo con FCLOSE(nControlador) si se ha
conseguido abrir, ya que si no se hace
no vas a poder abrir el archivo por ningun modo .

3. Tu comprobación quedaría de la siguiente manera :
if file("c:\mifile.xls")
if messagebox("El Archivo c:\mifile.xls ya existe, desea
reemplazarlo ",36,"Aviso")=6
&&& aqui es donde verificas y abres el archivo con fopen
nControlador = FOPEN("c:\mifile.xls",2) &&& esto trata de abrir
el archivo de manera exclusiva
If nControlador<>-1
üLOSE(nControlador)
ERASE c:\mifile.xls
Else
=messagebox("No se puede generar el archivo, porque este esta
abierto por otro usuario en modo exclusivo ")
RETURN .F.
Endif
Endif
Luego aqui viene tu proceso de automatización

Espero te haya servido de ayuda

Salu2

Jesús Rojas Cárdenas
Analista Programador
Lima-Perú


"Mauricio U." escribió en el mensaje
news:%
Amigos

Duda sobre VFP-Excel

Estoy enviando una tabla a excel desde VFP y todo funciona OK.

Al dar la siguiente instrucción :

excel1.Activeworkbook.SAVEAS(("archivo.xls"))

Me manda un messagebox de excel advirtiendome que el archivo ya existe.

Efectivamente ya existe y lo que yo quiero es que el usuario haga un
overwrite ya que es una hoja electrónica temporal. Entonces sobra esa
advertencia. Alguien sabe cual es la orden para que sobreescriba sin
advertir la presencia del archivo

Mil gracias

Mauricio U.


Preguntas similares