Pasar datos de EXCEL a ACCESS con VB 6

Tengo una hoja de cálculo llamada prueba.xls en la que hay datos que quiero pasar a access mediante Visual Basic 6, y no se! Trabajo desde Vb 6 y quisiera pasar los datos de la tabla excel, en la que hay varios campos, para crear una tabla en access!

1 Respuesta

Respuesta
1
Cris20
Hola Lo más rapido de hacer es utilizar un control data (que no es recomendable) es más rapido el puro código asta el 50 %
En las propiedades del data1 ve a connect y selecciona Exel dependiendo de la vercin que manejes y en "database name" y dale la dirección de la hoja de calculo, en "data source" selecciona la Hoja y tatan enlasalo a un control como untexbox
Ok, pero me gustaría poder utilizar cada vez un archivo! Es decir utilizar un formulario, que lo tengo que hacer, en el que le digo el archivo que es y un botón para hacer el proceso de transformar! Gracias por tu respuesta anterior
Cris20
No entiendo muy bien lo que quieres pero creo que es esto:
Envés de el control data1 escribe esto en una rutina:
As una rutina que rellene un combobox contodos los documentos *.xls que al seleccionar uno con el indice, texto, itemdata, etc rellene otro que contenga todas las hojas de ese documento, ya con estos datos
Dale balores a las variables
Dirxls = Ubicacion del documento.
NombHoja = Nombre de la hoja.
dim db as dao.database
dim rs as dao.recordset
dim Dirxls,NombHoja as string
Dirxls = balor de la bariable
NombHoja = balor de la bariable
Set db = opendatabase(Dirxls)
Set rs = db.openrecordset(NombHoja,dbOpenDynaset)
Hay diferentes formas de abrir el record set el dbOpenDynaset te permite leer, escribir y editar checa los demás en la referencia de vb.
Para esto yo te recomiendo usar el dbOpenFordwaronly que es más rapido pero be las desventajas.
Para cambiar solo la hola deves hacer esto:
rs.close
set rs = nothing
NombHoja = balor dela bariable
asignarle otro balor con
Set rs = db.openrecordset(NombHoja,dbOpenDynaset)
Y rs. Refresh o rs. Requery "Si no existe una usa la otra" esto es para bolber a cargar el recordset que son los datos de tu hoja de calculo
Si quieres cambiar el documento as esto:
Db. Close
set db = nothing y es lo mismo
Nota: No te recomiendo que utilices otro formulario para algo tansencillo y corto solo por estética rapidez y funcionalidad solo agrega los controles que son tres dos combobox y un command button.
Si no esto descriveme bien lo que tienes en mente para servirte
Bye
Te diviertes ;)
Yo lo que quiero hacer es tener un formulario en el que poder elegir la hoja de calculo a pasar a access. Te aclaro:
- Un formulario donde poder elegir el archivo de excel de donde sacar la información
- Un botón que al pulsar me haga el proceso de : dada una BD y una tabla de esa BD introducir los datos, de la hoja de calculo seleccionada.
Espero que te haya aclarado mejor la pregunta, y muchas gracias por todo
En vb6 en el menu de Add-ins entra en Visual Data manager y abrirá un programa llamado visdata, aquí en File hay dos opciones Nuevo y abrir una base de datos.
Ya que tengas abierta, aparecerá una ventana, da un click derecho en propiedades y en Nueva Tabla aparece un formulario para crear la tabla ya que hayas creado la tabla Hay una untilidad que te crea un formulario para rellenar tu base, en Utiliti entra en Data Form Designer aquí solo da el nombre del formulario y la tabla.
Volviendo al caso abre otro data control y enlazalo con la hoja de exel como te dije antes, Crea un botón y en el as esto:
Data1.recodset.movefirst
Data1 sera acces
Data2.recodset.movefirst
Data2 sera Exel
do until data2.recordset.eof
data1.recordset.addnew
data1.recordset!NombredelCampoAcces = data2.recordset!NombredelCampoExel & ""
y asi con todos los campos
data1.recordset.update
loop
Esto es para copiar la tabla ya tu te encargara de los combobox por que lla me tengo que ir no es fácil aconsejar asiegas por que no se que llevas ni como lo as hecho pero esto es de buena fee
Bye.
Diviértete mucho
Y no olvides botar

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas