هذا المثال لاستدعاء بيانات جدول معين من الاكسيس باستخدام ال ADO
تأكد من وجود مرجع ADO معرف
مرفق مثال و مضاف به الوصلة للصفحة الأصلية بموقع ExcelTips
و يتم تحديد مسار القاعدة و اسم الجدول و مكان اللصق فى ورقة العمل
Sub Getit()
ADOImportFromAccessTable "E:\Program Files\Microsoft Office\OFFICE11\SAMPLES\Northwind.mdb", _
"Products", Range("A1")
End Sub
Sub ADOImportFromAccessTable(DBFullName As String, _
TableName As String, TargetRange As Range)
' Example: ADOImportFromAccessTable "C:\FolderName\DataBaseName.mdb", _
"TableName", Range("C1")
Dim cn As ADODB.Connection, rs As ADODB.Recordset, intColIndex As Integer
Set TargetRange = TargetRange.Cells(1, 1)
' open the database
Set cn = New ADODB.Connection
cn.Open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & _
DBFullName & ";"
Set rs = New ADODB.Recordset
With rs
' open the recordset
.Open TableName, cn, adOpenStatic, adLockOptimistic, adCmdTable
' all records
'.Open "SELECT * FROM " & TableName & _
" WHERE [FieldName] = 'MyCriteria'", cn, , , adCmdText
' filter records
'RS2WS rs, TargetRange ' write data from the recordset to the worksheet
' optional approach for Excel 2000 or later (RS2WS is not necessary)
For intColIndex = 0 To rs.Fields.Count - 1 ' the field names
TargetRange.Offset(0, intColIndex).Value = rs.Fields(intColIndex).Name
Next
TargetRange.Offset(1, 0).CopyFromRecordset rs ' the recordset data
End With
rs.Close
Set rs = Nothing
cn.Close
Set cn = Nothing
End Sub
ADO-getFromAccess.rar