تصدير بيانات Excel إلى Access باستخدام VBA (الصور والتعليمات البرمجية)
ما هذا؟
يساعدك رمز VBA هذا على التحميل أو تصدير بيانات Excel إلى Access بنقرة واحدة.
لماذا هو؟
أنت تستطيع تصدير بيانات Excel إلى Access دون حتى فتح قاعدة بيانات Access.
كيفية تصدير بيانات Excel إلى Access
الخطوة 1: Open the اكسل ورقة وحصلت على منشئ كود VBA (Alt + F11) وافتح وحدة نمطية جديدة
.
الخطوة 2: انسخ الكود التالي وألصقه فيه.
Const TARGET_DB = "myDB.accdb" "استبدل "myDB.accdb" باسم قاعدة البيانات الخاصة بك، وتأكد من وجود قاعدة بيانات Excel وAccess في نفس المسار.
Sub PushTableToAccess()
خافت CNN باسم ADODB.Connection
ديم مايكون
تعتيم أولاً باسم ADODB.Recordset
خافت ط طويل، ي طويل
خافت رو طالما
الأوراق ("اسم الورقة").تنشيط "استبدل "اسم الورقة" باسم ورقة Excel الخاصة بك
Rw = النطاق ("A65536").النهاية (xlUp).الصف
"أعط نطاق بيانات ورقة Excel الخاصة بك."
تعيين cnn = ADODB.Connection جديد
MyConn = ThisWorkbook.Path & Application.PathSeparator & TARGET_DB
مع سي ان ان
.Provider = "Microsoft.ACE.OLEDB.12.0"
.افتح مايكون
انتهت ب
"استبدل "tblMyExcelUpload" باسم الجدول الخاص بك في Access
المجموعة الأولى = ADODB.Recordset الجديد
rst.CursorLocation = adUseServer
rst.Open المصدر:=”tblMyExcelUpload”، ActiveConnection:=cnn، _
CursorType:=adOpenDynamic، LockType:=adLockOptimistic، _
الخيارات:=adCmdTable
"تحميل كافة السجلات من Excel إلى Access."
لأني = 2 إلى Rw
rst.AddNew
ل ي = 1 إلى 7
rst(Cells(1, j).Value) = Cells(i, j).Value
التالي ي
التحديث الأول
بعدها انا
'أغلق الاتصال
أولا. إغلاق
سي إن إن. إغلاق
تعيين الأول = لا شيء
تعيين سي إن إن = لا شيء
نهاية الفرعية
الخطوه 3:انقر فوق الزر "تشغيل" أو F5. (يمكنك أيضًا إدراج زر/شكل في ورقة Excel ثم انقر بزر الماوس الأيمن وقم بتعيين هذا الماكرو للتشغيل في كل مرة.) لقد انتهيت من التحميل!! تم تحميل سجلات Excel بنجاح إلى Access، افتح جدول قاعدة بيانات Access وتحقق من البيانات.
ملحوظة: تأكد من تمكين "مكتبة كائنات بيانات Microsoft ActiveX" من ملف أدوات - مراجع (الرقم يستخدم الإصدار الأحدث [6.1 اعتبارًا من هذا المنشور]).
Pin
8 Responses
اهلا جميعا؛
هل يجب أن يكون موقعا المسارين متماثلين حتى يعمل ADODBConnection؟ هذا هو ThisWorkbook.Path وTarget_DB.
الأمر من الأعلى:
ThisWorkbook.Path & Application.PathSeparator & TARGET_DB
أو يمكن قول Workbook.Path
"C:\MyExcelFiles\MyWorkbook.xlsx" وقاعدة بيانات Access TARGET_DB موجودة
"C:\MyDataBases\MyAccessDB.accdb"؟
يعمل الكود الخاص بي عندما يكون كل من Excel WorkBook وAccess DB موجودين في نفس المجلد، ولكن عندما يكونان في مجلد مختلف (بنية المكتبة المنظمة بشكل صحيح، يفشل الكود عند نقطة .Open MyConn.
شكرا لكم جميعا،
ماريو,
أهلاً
كيف أقوم بتعيين كلمة المرور لذلك؟
الدبابات
rst(Cells(1, j).Value) = Cells(i, j).Value
فواصل التعليمات البرمجية هنا
———-
خطأ 3265
لا يمكن العثور على العنصر في المجموعة المطابق للاسم المطلوب أو الترتيبي
———-
كيف سيبدو الكود إذا كان لدي جدول البيانات وقاعدة البيانات في مواقع مختلفة، أي المسارات؟
مرحبًا،
يعمل الكود الخاص بي حتى
الأوراق ("اسم الورقة").تنشيط
لقد حددت الورقة ولكن لم يحدث شيء بعد ذلك.
هل يمكن تقديم المشورة؟
شكرًا لك
حاول أوراق العمل("ورقتك").تنشيط
هل هناك أي أمر واحد لتحميل البيانات مثل (Range.CopyFromRecordset)؟
مرحبًا كريشنان، لست متأكدًا، اسمح لي بالاستكشاف وسأقوم بتحديثك.