Problemas en la importacion datos de Excel

183 views
Skip to first unread message

Esteban Micossi

unread,
Sep 13, 2020, 9:26:31 AM9/13/20
to Comunidad de Visual Foxpro en Español
Hola Grupo

Resulta que estoy trabajando en la importación de datos desde Excel
y venia bien, hasta que me empezó a aparecer este mensaje en el
proceso de importación:

error.png

Y me tira este mensaje:

"OLE error code 0x800706be: Error en la llamada a procedimiento remoto"

Y veo que es en este paso  " .workbooks.close" cuando quiero cerrar la planilla

Y no puedo salir de alli, debo ingresar al administrador de tareas

y desde alli cerrar el VFP.

No se si sera problemas del VFP, del Excel o de Windows.

Bueno grupo desde ya agradecido si me pueden orientar como  solucionaren este error

Atte
E.Micossi

Zarlu

unread,
Sep 13, 2020, 11:54:04 AM9/13/20
to Comunidad de Visual Foxpro en Español
Buenos días Esteban Micossi!

"..No se si sera problemas del VFP, del Excel o de Windows..."

De los tres en combinación. Pero diría que no es un problema propiamente....

Dos sugerencias:
1.- Sube tu código para analizar y probar
2.- Ejecuta Excel como visible quizá puedas observar donde se atora y poder cerrar y liberar las variables involucradas

Suerte
zarlu
Chetumal, Quintana Roo, México

Esteban Micossi

unread,
Sep 13, 2020, 2:27:46 PM9/13/20
to Comunidad de Visual Foxpro en Español
Hola Zarlu

Te cuento:
Tengo una notebook HP i5 que es con la que tengo el problema.
Pase todo a una notebook HP 610 viejita pero anda de 10, y 
procesa todo bien, no salta ningun error.

Estoy sospechando que es el Excel que tiene problemas.

De todas manera te paso el codigo:

*:-------------------------------------------------------------------------------
*-- Creando el objeto Excel
loexcel = createobject("Excel.Application")
with loexcel.application
.visible = .f.
.workbooks.open("&xarchivo") && *-- Abriendo la planilla con datos
ncol = .activesheet.usedrange.columns.count && *-- Determiando la cantidad de columnas en Excel
nfil = .activesheet.usedrange.rows.count && *-- Determiando la cantidad de filas en Excel
for lnj = thisform.txtfila.value to thisform.txtermina.value && nfil *-- Recorro todas las celdas
select sergio
append blank && se iserta el nuevo registro
for lni = 1 to ncol && *!* el recorrido es columnas y luego filas
xcampo = .activesheet.cells(1,lni).value && Nombre del campo destino
xvalor = .activesheet.cells(lnj,lni).value && Rescupera el valor de la celda en excel
* wait window xvalor nowait
micampo='N'+alltrim(str(lni))
xtipocampo = type(micampo) && se obtiene de la tabla el tipo de campo
do case
case xtipocampo = "D" && si el campo es de fecha
if isnull(xvalor) && es fecha en blanco o nulo
replace &micampo with ctod("  /  /  ") in sergio
else
replace &micampo with ttod(xvalor) in sergio
endif
case xtipocampo = "C"
if isnull(xvalor)
replace &micampo with '' in sergio
else
if vartype(xvalor) = "N" && por si el valor en excel no es TEXT
replace &micampo with padl(xvalor,11,'0') in sergio && alltrim(upper(str(xvalor))) in sergio
else
replace &micampo with xvalor in sergio
endif
endif
case xtipocampo = "N"
if isnull(xvalor)
replace &micampo with 0 in sergio
else
replace &micampo with xvalor in sergio
endif
endcase
endfor
thisform.grid1.refresh
endfor
.workbooks.close &&  *-- Cierro la planilla
.quit &&  *-- Salgo de Excel
ENDWITH
release loexcel
*:-------------------------------------------------------------------------------

En ambas maquinas trabajo con Windows 7. 32 bits

Bueno Zarlu gracias por responder y veamos que puede estar pasando.

Te dejo cordiales saludos

Atte

Esteban Micossi

Esteban Micossi

unread,
Sep 13, 2020, 2:42:41 PM9/13/20
to Comunidad de Visual Foxpro en Español
Zarlu

Te comento. Volvi a la HP i5 y descubri que detras del VFP, (cuando minimice el vfp) aparecio un cartel diciendo si queria guardar la planilla de calculo que habia abierto con VFP y le dije que si, y se soluciono el problema.
Ahora entra bien. Realmente nose que paso, pero bueno la cosa es que se soluciono.
Ya te libero de este bolonqui. Bueno si ves que algo esta mal en la rutina que te envie, me los dices.

Bueno amigo, gracias

Saludos

Esteban Micossi

Zarlu

unread,
Sep 14, 2020, 11:06:15 AM9/14/20
to Comunidad de Visual Foxpro en Español
Buenos días Esteban Micossi!

Se me hace que esa situación se te presentará de nuevo en otra máquina y/o cuando trabajes con otro archivo.
Entonces debes configurar las alertas de Excel.
Algo así:
loExcel.Application.DisplayAlerts = .f.

zarlu
Chetumal, Quintana Roo, México

Reply all
Reply to author
Forward
0 new messages