VBA - एक कस्टम आयात इंटरफ़ेस बनाएँ

विषय - सूची

क्या आप फ़ाइलों को आयात करने वाले उपयोगकर्ताओं पर नियंत्रण रखना पसंद करेंगे, बजाय इसके कि वे इसे करने के लिए एक्सेल सुविधाओं का उपयोग करें? क्या आपको आयात पर सत्यापन या संशोधन के लिए अपने आयातों पर अधिक नियंत्रण की आवश्यकता है? ऐसा करने के कई तरीके हैं और उतनी ही आवश्यकता भिन्नताएं हैं, लेकिन यहां से शुरू करने के लिए कुछ बिल्डिंग ब्लॉक हैं।

1. निम्नलिखित कोड को एक मॉड्यूल में रखें और फिर इसे चलाएँ

सार्वजनिक उप कस्टम आयात ()

'चर परिभाषित करें'
स्ट्रिंग के रूप में मंद आयातफ़ाइल
स्ट्रिंग के रूप में मंद आयात शीर्षक
स्ट्रिंग के रूप में मंद TabName
स्ट्रिंग के रूप में डिम कंट्रोलफाइल

'सामान्य संवाद खोलें और फ़ाइल नाम प्राप्त करें'
इंपोर्टफाइल = एप्लिकेशन। गेटओपनफाइलनाम (_
"एक्सेल फ़ाइलें, *.xls, सभी फ़ाइलें, *.*")
आयात शीर्षक = _
मिड (इम्पोर्टफाइल, इनस्ट्रेव (इम्पोर्टफाइल, "\") + 1)

'चेक रद्द करें पर क्लिक नहीं किया गया था'
अगर ImportFile = "गलत" तो
उप से बाहर निकलें
अगर अंत

'फ़ाइल आयात करें
TabName = "MyCustomImport"
ControlFile = ActiveWorkbook.Name
कार्यपुस्तिकाएँ। फ़ाइल नाम खोलें: = आयात फ़ाइल
ActiveSheet.Name = TabName
शीट्स (टैबनाम)। कॉपी _
इससे पहले: = कार्यपुस्तिकाएं (कंट्रोलफाइल)। शीट्स (1)
विंडोज़ (आयात शीर्षक)। सक्रिय करें
ActiveWorkbook.Close SaveChanges:=False
विंडोज़ (कंट्रोलफाइल)। सक्रिय करें

अंत उप
सिडेनोट: यह *.xls, *.xlsx, *.xlsm, *.csv, और *.txt फ़ाइलों के लिए अच्छा काम करता है। उपयोगकर्ता द्वारा इसे छूने से पहले आयातित डेटा को संशोधित करने के लिए आप एंड सब से पहले कोड जोड़ या कॉल कर सकते हैं।

wave wave wave wave wave