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!
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