محمد طاهر عرفه قام بنشر يوليو 27, 2004 قام بنشر يوليو 27, 2004 لنفرض أن لدينا ملف قاعدة بيانات به جدول اسمه Table1 و به ثلاثة حقول m1,m2,m3 و أن ملف قاعدة البيانات اسمه و مساره كالتالي c:\1.mdb لتصدير البيانات الموجودة فى ورقة عمل اكسيل بدء من الصف الثالث الخلية A Sub ADOFromExcelToAccess() ' exports data from the active worksheet to a table in an Access database ' this procedure must be edited before use Dim cn As ADODB.Connection, rs As ADODB.Recordset, r As Long ' connect to the Access database Set cn = New ADODB.Connection cn.Open "Provider=Microsoft.Jet.OLEDB.4.0; " & _ "Data Source=C:\1.mdb;" ' open a recordset Set rs = New ADODB.Recordset rs.Open "Table1", cn, adOpenKeyset, adLockOptimistic, adCmdTable ' all records in a table r = 3 ' the start row in the worksheet Do While Len(Range("A" & r).Formula) > 0 ' repeat until first empty cell in column A With rs .AddNew ' create a new record ' add values to each field in the record .Fields("m1") = Range("A" & r).Value .Fields("m2") = Range("B" & r).Value .Fields("m3") = Range("C" & r).Value ' add more fields if necessary... .Update ' stores the new record End With r = r + 1 ' next row Loop rs.Close Set rs = Nothing cn.Close Set cn = Nothing End Sub الموضوع الأصلي
محمد طاهر عرفه قام بنشر يوليو 28, 2004 الكاتب قام بنشر يوليو 28, 2004 الكود باستخدام DAO Sub DAOFromExcelToAccess() ' exports data from the active worksheet to a table in an Access database ' this procedure must be edited before use Dim db As Database, rs As Recordset, r As Long Set db = OpenDatabase("C:\FolderName\DataBaseName.mdb") ' open the database Set rs = db.OpenRecordset("TableName", dbOpenTable) ' get all records in a table r = 3 ' the start row in the worksheet Do While Len(Range("A" & r).Formula) > 0 ' repeat until first empty cell in column A With rs .AddNew ' create a new record ' add values to each field in the record .Fields("FieldName1") = Range("A" & r).Value .Fields("FieldName2") = Range("B" & r).Value .Fields("FieldNameN") = Range("C" & r).Value ' add more fields if necessary... .Update ' stores the new record End With r = r + 1 ' next row Loop rs.Close Set rs = Nothing db.Close Set db = Nothing End Sub الموضوع الأصلي
الردود الموصى بها