Comparto Rutina para copiar datos de Excel a VFP

882 views
Skip to first unread message

Antonio Meza

unread,
Feb 19, 2015, 11:10:27 PM2/19/15
to publice...@googlegroups.com
Hola, veo que muchos están últimamente tratando de importar datos de EXCEL a VFP, bueno la siguiente rutina posiblemente les pueda servir, la pueden ajustar a sus necesidades ya que incluso por automatización se puede hacer todo directo sin intervención del usuario y se evitan problemas con valores y celdas, etc, etc.

Como es sencilla, solo agreguen un control EDITBOX a un formulario y un botón  y pegan el siguiente código, luego ejecuten el formulario, abran excel, seleccionen las filas y columnas, las copian y regresan al formulario pegan la información dentro del EDITBOX y presionan el boton y les mostrara los datos por filas y columnas que copiaron.

Ya teniendo los datos identificados por Filas y columnas pueden manipularlos a su antojo, como los datos obtenidos con de tipo Carácter, solo queda convertirlos a sus respectivos valores Fecha, Numerico usando las funciones de VFP, y los pueden mandar a sus bases de datos.

El código es el siguiente muy sencillo.

NOTA: El nombre del control EDITBOX déjenlo como edit1 para la prueba ya después el nombre que gusten.

* Obtener cantidad de Filas
nFilas = ALINES(aFilas,thisform.edit1.Value,CHR(13))
* Recorrer Filas
FOR nCantidadFilas = 1 TO nFilas
* Obtener Cantidad de Columnas
nColumnas = ALINES(aColumnas,aFilas(nCantidadFilas),CHR(9))
* Recorrer Columnas
FOR nCantidadColumnas = 1 TO nColumnas
* Mostrar Valores de Columnas
WAIT windows "Fila: " + ALLTRIM(STR(nCantidadFilas)) + CHR(13) ;
  + "Columna: " + ALLTRIM(STR(nCantidadColumnas)) + CHR(13) ;
  + "Valor de Columna: " + aColumnas(nCantidadColumnas)
NEXT
NEXT


saludos
Antonio Meza


Marcelo Barberis

unread,
Feb 20, 2015, 1:18:58 PM2/20/15
to publicesvfoxpro
mmmm tengo una duda, bueno yo tengo una tabla en excel con una lista con 8 columna de socios de cerca de 2000 personas y bueno quiero pasarlo a una  tabla de vfp con esta rutina lo puedo hacer sin problema alguno?

otra consulta, poniendo el control edit1 ya esan activadas las funciones de copiar y pegar, bueno lo que yo entendi de lo que expusiste que pongo un control editbox y boton y pego esta rutina que tu pones aqui, bueno despues ya tengo abierta mi hoja de excel con mi lista y procedo a marcar todo y le doy en copiar y despues me paso a mi form y en el control editbox le doy en pegar y listo asi es?
--
Marcelo Barberis Gutierrez
Sistemas Informaticos
Villa Montes - Bolivia
Telef.: +591-76831064

Antonio Meza

unread,
Feb 20, 2015, 5:42:05 PM2/20/15
to publice...@googlegroups.com
Anexo el formulario!!

Así es, tienes que abrir tu excel, seleccionar y copiar las filas y columnas y luego ya te pasas al formulario y pegas los datos en el editbox, le das click al botón y te empieza a mostrar los datos, no importa la cantidad de filas ni la cantidad de columnas, solo que para el ejemplo te recomiendo que selecciones pocos porque muestra un Wait Windows con la información.

Donde esta el wait windows ahí ya tienes identificada la Fila y la columna y ya puedes mandar esa información a donde gustes.

saludos
Antonio Meza
leer_xls.7z
Reply all
Reply to author
Forward
0 new messages