यह ट्यूटोरियल प्रदर्शित करेगा कि वीबीए का उपयोग करके टेक्स्ट फाइलों को कैसे लिखना है।
टेक्स्ट फ़ाइल में लिखें
नीचे दिए गए कोड का उपयोग करते हैं फाइलसिस्टमऑब्जेक्ट. इसका उपयोग करने के लिए, आपको वीबी स्क्रिप्ट रन-टाइम लाइब्रेरी का संदर्भ सेट करना होगा।
नई टेक्स्ट फ़ाइल में लिखें
उसके साथ टेक्स्टफाइल बनाएं उसकि विधि फाइलसिस्टमऑब्जेक्ट आप टेक्स्ट फ़ाइल में सामग्री बना और जोड़ सकते हैं:
123456789 | उप FSOCreateAndWriteToTextFile ()नई फाइलसिस्टमऑब्जेक्ट के रूप में मंद एफएसओFSO सेट करें = CreateObject ("Scripting.FileSystemObject")FileToCreate = FSO.CreateTextFile("C:\Test\TestFile.txt") सेट करेंFileToCreate। "टेस्ट लाइन" लिखेंFileToCreate.बंद करेंअंत उप |
कृपया ध्यान दें कि सामग्री उद्धरणों से संलग्न नहीं होगी।
मौजूदा टेक्स्ट फ़ाइल को लिखें
किसी मौजूदा टेक्स्ट फ़ाइल को लिखने के लिए आप इसका उपयोग कर सकते हैं ओपनटेक्स्टफाइल उसकि विधि फाइलसिस्टमऑब्जेक्ट साथ लिखने के लिये तरीका।
123456789 | उप FSOWriteToTextFile ()नई फाइलसिस्टमऑब्जेक्ट के रूप में मंद एफएसओFSO सेट करें = CreateObject ("Scripting.FileSystemObject")FileToWrite = FSO.OpenTextFile ("C:\Test\TestFile.txt", ForWriting) सेट करेंFileToWrite.Write "टेस्ट लाइन"FileToWrite.बंद करेंअंत उप |
कृपया ध्यान दें कि मौजूदा टेक्स्ट फ़ाइल में लिखने के लिए आपको FileSystemObject की आवश्यकता नहीं है। उपरोक्त उदाहरण नीचे दिए गए इस कोड में दूसरे तरीके से दिखाया गया है (डेटा श्रेणी से टेक्स्ट फ़ाइल अनुभाग में अन्य उदाहरण देखें):
123456789 | उप लिखेंToTextFile ()स्ट्रिंग के रूप में मंद फ़ाइल नामफ़ाइल नाम = "सी: \ टेस्ट \ TestFile.txt"# 1 . के रूप में आउटपुट के लिए फ़ाइल नाम खोलें# 1 प्रिंट करें, "टेस्ट लाइन"बंद #1अंत उप |
कृपया ध्यान दें कि प्रिंट के बजाय लिखें कमांड का उपयोग करने के परिणामस्वरूप अतिरिक्त सामग्री को उद्धरणों से संलग्न किया जाएगा। आपके मैक्रो में दोनों कमांड का होना
12 | #1 लिखें, "टेस्ट लाइन #1"प्रिंट #1, "टेस्ट लाइन #2" |
इस तरह की एक टेक्स्ट फ़ाइल का परिणाम होगा:
वीबीए प्रोग्रामिंग | कोड जेनरेटर आपके लिए काम करता है!
टेक्स्ट फ़ाइल में जोड़ें
उपरोक्त कोड में मोड को ForAppending में बदलकर, टेक्स्ट फ़ाइल के अंत में एक लाइन जोड़ी जा सकती है:
1 | FileToWrite = FSO.OpenTextFile("C:\Test\TestFile.txt", ForAppending) सेट करें |
राइटलाइन विधि
यह विधि इनपुट स्ट्रिंग को मौजूदा सामग्री में एक अलग लाइन के रूप में जोड़ती है।
विधि लिखें
इनपुट स्ट्रिंग को मौजूदा सामग्री के समान लाइन पर जोड़ा जाता है।
VBA कोड उदाहरण खोज कर थक गए हैं? ऑटोमैक्रो का प्रयास करें!
ब्लैंक लाइन लिखें
यह विधि टेक्स्ट फ़ाइल में पैरामीटर के रूप में लिखी जाने वाली रिक्त पंक्तियों की संख्या लेती है।
नीचे दिया गया यह कोड विभिन्न लेखन विधियों के बीच अंतर को दर्शाता है:
12345678910111213 | उप लिखने के तरीके ()नई फाइलसिस्टमऑब्जेक्ट के रूप में मंद एफएसओFSO सेट करें = CreateObject ("Scripting.FileSystemObject")FileToWrite = FSO.OpenTextFile("C:\Test\TestFile.txt", ForAppending) सेट करेंFileToWrite.Write "टेस्ट लाइन #1"FileToWrite.Write "टेस्ट लाइन #2"FileToWrite.WriteBlankLines (3)FileToWrite.WriteLine "टेस्ट लाइन #3"FileToWrite.WriteLine "टेस्ट लाइन #4"FileToWrite.बंद करेंअंत उप |
और परिणाम:
वीबीए प्रोग्रामिंग | कोड जेनरेटर आपके लिए काम करता है!
टेक्स्ट फ़ाइल के लिए डेटा रेंज
यदि आप अपनी वर्कशीट से टेक्स्ट फ़ाइल में डेटा रेंज आउटपुट करना चाहते हैं, तो आप इस कोड का उपयोग कर सकते हैं:
12345678910111213141516171819 | उप आउटपुट टोटेक्स्टफाइल ()स्ट्रिंग के रूप में मंद फ़ाइल नाम, स्ट्रिंग के रूप में लाइनटेक्स्टडिम मायरेंज ऐज़ रेंज, i, jFileName = "C:\Test\TestFile.txt" 'आप यहां वह टेक्स्ट फ़ाइल नाम निर्दिष्ट कर सकते हैं जिसे आप बनाना चाहते हैं# 1 . के रूप में आउटपुट के लिए फ़ाइल नाम खोलेंMyRange = रेंज ("डेटा") सेट करें 'यह मानता है कि आपके पास अपनी वर्कशीट पर "डेटा" नामक डेटा श्रेणी हैI = 1 के लिए MyRange.Rows.Count . के लिएj = 1 से MyRange.Columns.Count . के लिएLineText = IIF(j = 1, "", LineText & ","") & MyRange.Cells(i, j) 'पाठ फ़ाइल बनाने में अल्पविराम विभाजक होगाअगला जेPrint #1, LineText 'प्रिंट के बजाय लिखें कमांड का उपयोग करने के परिणामस्वरूप आपका डेटा आउटपुट टेक्स्ट फ़ाइल में उद्धरणों में होगाअगला मैंबंद #1अंत उप |
पाठ फ़ाइल के लिए सरणी
आप अपने डेटा की सरणी को इस तरह एक टेक्स्ट फ़ाइल में भी सहेज सकते हैं:
12345678910111213141516 | उप SaveArrayToTextFile ()डिम मायएरे वैरिएंट के रूप मेंनई फाइलसिस्टमऑब्जेक्ट के रूप में मंद एफएसओFSO सेट करें = CreateObject ("Scripting.FileSystemObject")MyArray = ऐरे (ऐरे ("00", "01"), ऐरे ("10", "11"), ऐरे ("20", "21"))FileToCreate = FSO.CreateTextFile("C:\Test\TestFile.txt") सेट करेंn = 0 के लिए UBound(MyArray) के लिएFileToCreate.WriteLine MyArray(n)(0) & "," & MyArray(n)(1)अगलाFileToCreate.बंद करेंअंत उप |