Les dejo un aporte para importar datos de Access a Excel!
Primedo deben de agregar la referencia "Microsoft ActiveX Data Object 2.8 Library"
Esto es en la opción Referencias del menú Herramientas en VB.
Sub importarDeAccess()
'Variables de la conecciónDim miConn As ADODB.Connection
Dim miRset As ADODB.Recordset
Dim miBase, miSQL AsStringDim miTabla AsStringDim misCampos AsLongDim i AsLong'Colocar la ruta del archivo, en este caso la base'Esta en la carpeta donde esta el archivo
miBase = ThisWorkbook.Path & "\" & "db.mdb"'Nombre de la tabla del archivo Access
miTabla = "salarios_2003"'Se crea y abre la conecciónSet miConn = New ADODB.Connection
Set miRset = New ADODB.Recordset
miConn.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source =" & miBase & ";"'Se genera Consulta SQL
miSQL = "SELECT * FROM " & strTabla & ""
miRset.Open miSQL, miConn
'Se copian datos a la hoja
ActiveSheet.Cells(2, 1).CopyFromRecordset miRset
'Se copian los títulos de las Columnas
misCampos = miRset.Fields.Count
For i = 0To misCampos - 1
ActiveSheet.Cells(1, i + 1).Value = miRset.Fields(i).Name
Next'desconectar
miRset.Close: Set miRset = Nothing
miConn.Close: Set miConn = NothingEndSub
[/CODE]
En realidad es bastante fácil una vez que se entiende cómo accede a los datos de acuerdo a las sentencias SQL que se realicen
La próxima subiré un ejemplo de lo que se puede hacer con ello!
Hola!
Les dejo un aporte para importar datos de Access a Excel!
Primedo deben de agregar la referencia "Microsoft ActiveX Data Object 2.8 Library"
Esto es en la opción Referencias del menú Herramientas en VB.
Sub importarDeAccess() 'Variables de la conección Dim miConn As ADODB.Connection Dim miRset As ADODB.Recordset Dim miBase, miSQL As String Dim miTabla As String Dim misCampos As Long Dim i As Long 'Colocar la ruta del archivo, en este caso la base 'Esta en la carpeta donde esta el archivo miBase = ThisWorkbook.Path & "\" & "db.mdb" 'Nombre de la tabla del archivo Access miTabla = "salarios_2003" 'Se crea y abre la conección Set miConn = New ADODB.Connection Set miRset = New ADODB.Recordset miConn.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _ "Data Source =" & miBase & ";" 'Se genera Consulta SQL miSQL = "SELECT * FROM " & strTabla & "" miRset.Open miSQL, miConn 'Se copian datos a la hoja ActiveSheet.Cells(2, 1).CopyFromRecordset miRset 'Se copian los títulos de las Columnas misCampos = miRset.Fields.Count For i = 0 To misCampos - 1 ActiveSheet.Cells(1, i + 1).Value = miRset.Fields(i).Name Next 'desconectar miRset.Close: Set miRset = Nothing miConn.Close: Set miConn = Nothing End Sub [/CODE]
En realidad es bastante fácil una vez que se entiende cómo accede a los datos de acuerdo a las sentencias SQL que se realicen
La próxima subiré un ejemplo de lo que se puede hacer con ello!
Salu2!