वीबीए (छवियां और कोड) के साथ एक्सेस करने के लिए एक्सेल डेटा निर्यात करें
यह क्या है?
This VBA code helps you to upload or export Excel data to Access in one click.
क्यों यह है?
You can export Excel data to Access without even opening the Access DB.
एक्सेल डेटा को एक्सेस में कैसे निर्यात करें
स्टेप 1: खोलें एक्सेल शीट और VBA कोड बिल्डर (Alt + F11) पर पहुंचें और एक नया मॉड्यूल खोलें
.
चरण दो: इसमें नीचे दिए गए कोड को कॉपी करके पेस्ट करें।
स्थिरांक TARGET_DB = "myDB.accdb" ''myDB.accdb' को अपने db नाम से बदलें, सुनिश्चित करें कि Excel और Access DB दोनों एक ही पथ पर हैं।
उप PushTableToAccess()
ADODB.कनेक्शन के रूप में मंद सीएनएन
मंद मायकोन
ADODB.Recordset के रूप में पहले मंद करें
मंद मैं जितना लंबा, जे उतना लंबा
मंद आरडब्ल्यू जितना लंबा
शीट्स ("शीट का नाम")। सक्रिय करें 'शीट नाम' को अपने एक्सेल शीट नाम से बदलें
आरडब्ल्यू = रेंज(“ए65536”).अंत(xlUp).पंक्ति
'अपनी एक्सेल शीट डेटा रेंज दें
सीएनएन = नया एडीओडीबी.कनेक्शन सेट करें
MyConn = ThisWorkbook.Path और एप्लिकेशन.PathSeparator और TARGET_DB
सीएनएन के साथ
.प्रदाता = "Microsoft.ACE.OLEDB.12.0"
.MyConn खोलें
के साथ समाप्त करना
'एक्सेस में 'tblMyExcelUpload' को अपने टेबल नाम से बदलें
आरएसटी = नया एडीओडीबी.रिकॉर्डसेट सेट करें
rst.CursorLocation = adUseServer
rst.ओपन सोर्स:='tblMyExcelUpload', ActiveConnection:=cnn, _
कर्सर प्रकार:=adOpenDynamic, LockType:=adLockऑप्टिमिस्टिक, _
विकल्प:=adCmdTable
'एक्सेल से एक्सेस तक सभी रिकॉर्ड लोड करें।
I = 2 से Rw के लिए
पहला.नया जोड़ें
जे = 1 से 7 के लिए
rst(सेल्स(1, जे).वैल्यू) = सेल(आई, जे).वैल्यू
अगला जे
पहला.अद्यतन
अगला मैं
'कनेक्शन बंद करें
सबसे पहले बंद करें
सीएनएन.बंद करें
पहला सेट करें = कुछ नहीं
सीएनएन सेट करें = कुछ भी नहीं
अंत उप
चरण 3:रन बटन या F5 पर क्लिक करें। (इसके अलावा आप एक्सेल शीट में एक बटन/आकार डाल सकते हैं, फिर राइट क्लिक करें और इस मैक्रो को हर बार चलाने के लिए असाइन करें।) आपने अपलोड करना पूरा कर लिया है!! एक्सेल रिकॉर्ड सफलतापूर्वक एक्सेस पर अपलोड कर दिए गए हैं, अपनी एक्सेस डीबी टेबल खोलें और डेटा की जांच करें।
टिप्पणी: सुनिश्चित करें कि 'Microsoft ActiveX डेटा ऑब्जेक्ट लाइब्रेरी' सक्षम है औजार – संदर्भ (संख्या नवीनतम संस्करण का उपयोग करती है [इस पोस्ट के अनुसार 6.1])।
Pin
9 प्रतिक्रियाएं
हैलो सभी को;
क्या इस ADODBConnection के काम करने के लिए ये दोनों पथ स्थान समान होने चाहिए? वह ThisWorkbook.Path और Target_DB है।
ऊपर से आदेश:
यह वर्कबुक.पथ और अनुप्रयोग.पाथसेपरेटर और TARGET_DB
या फिर Workbook.Path कह सकते हैं
"C:\MyExcelFiles\MyWorkbook.xlsx" और एक्सेस डेटा बेस TARGET_DB में रहें
"C:\MyDataBases\MyAccessDB.accdb"?
मेरा कोड तब काम करता है जब एक्सेल वर्कबुक और एक्सेस डीबी दोनों एक ही फ़ोल्डर में रहते हैं, लेकिन जब वे अलग-अलग फ़ोल्डर में होते हैं (उचित रूप से व्यवस्थित लाइब्रेरी संरचना, तो कोड .Open MyConn बिंदु पर विफल हो जाता है।
सभी को धन्यवाद,
मारियो,
नमस्ते
मैं इसके लिए पासवर्ड कैसे सेट करूं?
टैंक
rst(सेल्स(1, जे).वैल्यू) = सेल(आई, जे).वैल्यू
कोड यहाँ टूट जाता है
———-
त्रुटि 3265
अनुरोधित नाम या क्रमसूचक के अनुरूप आइटम संग्रह में नहीं पाया जा सकता है
———-
यदि मेरे पास स्प्रेडशीट और डीबी अलग-अलग स्थानों यानी पथों पर हों तो कोड कैसा दिखेगा?
नमस्ते,
मेरा कोड तब तक चलता है
शीट्स ("शीट का नाम")। सक्रिय करें
मैंने शीट का चयन कर लिया है लेकिन आगे कुछ नहीं होता है।
क्या आप सलाह दे सकते हैं?
धन्यवाद
वर्कशीट्स ("आपकीशीट") आज़माएं। सक्रिय करें
क्या डेटा अपलोड करने के लिए कोई एकल कमांड है जैसे (Range.CopyFromRecordset)?
हाय कृष्णन, निश्चित नहीं, मुझे पता लगाने दीजिए और आपको अपडेट करूंगा।