Com connectar des d'Access, mitjantçant codi ADO, a una base de dades Access Externa
Els registres d'aquest quadre de llista s'han obtingut mitjantçant una connexió a una base de dades Access externa utilitzant el model ADO.
En l'event "al cargar"
hem situat un codi que fa:
- Estableix la connexió amb la base de dades Access externa
- Crea un Recordset a partir d'una consulta SQL a una de les taules de la base de dades externa
- Obre el Recorset, comença a llegir les línees una a una i a afegir al quadre de llista els valors codi província i província del recorset, en dues columnes, fins que arriba al final del Recordset
Aquest codi és el següent
Private Sub Form_Load()
Dim cnn As ADODB.Connection
Set cnn = New ADODB.Connection
cnn.Open "Provider=Microsoft.ACE.OLEDB.12.0;User ID=Admin;" & _
"Data Source=C:\Users\cesc\Google Drive\INFORMATICA\CONEIXEMENTS\ACCESS\ProgVBAdbExterna.accdb"
'La informació i forma d'obtenir aquesta cadena de connexió es troba en la
'base de dades ProgVBAdbExterna, ja que és la db on ens connectem
'La cadena ha estat tallada fins al mínim necessari per evitar errors
Dim registres As ADODB.Recordset
Set registres = New ADODB.Recordset
registres.ActiveConnection = cnn
registres.Open "SELECT * FROM Provincias ORDER BY Provincia"
registres.MoveFirst
Do Until registres.EOF
Me.lstRegistresExternsADO.AddItem registres!CodigoProvincia & ";" & registres!Provincia
registres.MoveNext
Loop
registres.Close
Set registres = Nothing
cnn.Close
Set cnn = Nothing
End Sub
Dim cnn As ADODB.Connection
Set cnn = New ADODB.Connection
cnn.Open "Provider=Microsoft.ACE.OLEDB.12.0;User ID=Admin;" & _
"Data Source=C:\Users\cesc\Google Drive\INFORMATICA\CONEIXEMENTS\ACCESS\ProgVBAdbExterna.accdb"
'La informació i forma d'obtenir aquesta cadena de connexió es troba en la
'base de dades ProgVBAdbExterna, ja que és la db on ens connectem
'La cadena ha estat tallada fins al mínim necessari per evitar errors
Dim registres As ADODB.Recordset
Set registres = New ADODB.Recordset
registres.ActiveConnection = cnn
registres.Open "SELECT * FROM Provincias ORDER BY Provincia"
registres.MoveFirst
Do Until registres.EOF
Me.lstRegistresExternsADO.AddItem registres!CodigoProvincia & ";" & registres!Provincia
registres.MoveNext
Loop
registres.Close
Set registres = Nothing
cnn.Close
Set cnn = Nothing
End Sub
Comentaris
Publica un comentari a l'entrada