91 007 17 22 - 09:30 a 14:00 y de 16:00 a 21:00 horas.info@asociacionaepi.es

Cómo utilizar VBA para importar datos de Excel a Access

Posteado en: blog Iniciado por

Cómo utilizar VBA para importar datos de Excel a Access

Después del parón obligado por Navidad volvemos con nuestro blog, hoy lo dedicamos a aprender mas cosas sobre Excel, recuerda que si te ha gustado lo que has leído compártelo!! Este articulo ha sido extraido de nuestro curso “Excel avanzado y programacion VBA”, el cual lo puedes consultar pinchando aqui.

Aprender a utilizar Visual Basic para aplicaciones para importar datos a Access puede hacer que su aplicación de base de datos más dinámico. En VBA , puede utilizar una combinación de objetos para abrir un libro de Excel existente e importar algunos datos a una tabla de Access. Utilice la biblioteca de objetos de Microsoft Excel en VBA para abrir el libro . El objeto Recordset se utiliza para abrir una tabla existente en el acceso y guardar los datos de Excel en el mismo. Usando VBA para importar datos puede reducir significativamente la cantidad de tiempo que pasa la importación de datos de forma manual.

Instrucciones:
1. Abrimos Microsoft Office Excel y escribimos ” datos1 ” en A2, y ” data2 ” en B2 . Pulsamos la tecla “Ctrl ” y ” S ” para abrir el “Guardar como” ventana de diálogo y guardamos el libro en “C: \\ Temp \\ ” as “. DataToImport.xlsx “.

2. Abrimos Microsoft Office Access , hacemos clic en “Base de datos en blanco ” y clic en el botón “Crear” . Hacemos clic en ” Herramientas de base de datos” y posteiormente clic en “Visual Basic ” para abrir la ventana del editor de VB hacemos clic en el menú ” Insertar” y luego clic en ” módulos” para insertar un nuevo módulo de código. Hacemos clic en el menú ” Herramientas”-> “Referencias “, y marcamos la casilla junto a ” biblioteca de objetos de Microsoft . ”

3. Ahora escribimos el siguiente código de VBA crear nuevo procedimiento sub :

Dim xlApp As Excel.Application
Dim xlBk As Excel.Workbook
Dim xlSht As Excel.Worksheet
Dim dbRst As Recordset
Dim dbs As Database
Dim sqlstr As String

Public Sub ImportPreVtas()

Set dbs = CurrentDb
Set xlApp = Excel.Application
Set xlBk = xlApp.Workbooks.Open(“F:\Proyectos\pruebappto.xlsx”)
Set xlSht = xlBk.Sheets(1)

sqlstr = “CREATE TABLE Exceldata(columnOne string, columnTwo string)”
DoCmd.SetWarnings False
DoCmd.RunSQL sqlstr
Set dbRst = dbs.OpenRecordset(“Exceldata”)
dbRst.AddNew
xlSht.Range(“A3”).Select
dbRst.Fields(0).Value = xlSht.Range(“A3”).Value
xlSht.Range(“B3”).Select
dbRst.Fields(1).Value = xlSht.Range(“B3”).Value
dbRst.Update
dbRst.Close
dbs.Close
xlBk.Close

End Sub

4. Presionamos “F5 ” para ejecutar el procedimiento.

image_pdfimage_print

Leave a Reply

Uso de cookies

Utilizamos cookies propias y de terceros para mejorar la experiencia de navegación y ofrecer contenidos y publicidad de interés. Al continuar con la navegación entendemos que se acepta nuestra política de privacidad y cookies, pinche el enlace para mayor información.

ACEPTAR
Aviso de cookies