VBA पाठ फ़ाइल लिखें - VBA कोड का उपयोग करके एक्सेल डेटा को टेक्स्ट फ़ाइलों में लिखें

एक्सेल VBA पाठ फ़ाइल लिखें

VBA में हम टेक्स्ट फाइल को खोल या पढ़ या लिख ​​सकते हैं, टेक्स्ट फाइल लिखने का मतलब है कि हमारे पास एक्सेल शीट में मौजूद डेटा है और हम इसे टेक्स्ट फाइल या नोटपैड फाइल के लिए चाहते हैं, इसके दो तरीके हैं, एक है VBA की फाइल सिस्टम ऑब्जेक्ट प्रॉपर्टी का उपयोग करना और दूसरा VBA में ओपन एंड राइट विधि का उपयोग करना है।

ज्यादातर कॉर्पोरेट कंपनियों में, रिपोर्ट को अंतिम रूप देने के बाद, वे रिपोर्ट को डेटाबेस में अपलोड करते हैं। डेटाबेस में अपलोड करने के लिए, वे डेटाबेस को अपडेट करने के लिए "टेक्स्ट फाइल" प्रारूप का उपयोग करते हैं। हम आमतौर पर एक्सेल से डेटा कॉपी करते हैं और टेक्स्ट फाइल में पेस्ट करते हैं। इस कारण से हम पाठ फ़ाइलों पर भरोसा करते हैं क्योंकि उनके हल्के और सरल तरीकों के कारण काम करना बहुत आसान है। VBA कोडिंग का उपयोग करके, हम एक्सेल फ़ाइल से टेक्स्ट फ़ाइल में डेटा कॉपी करने के कार्य को स्वचालित कर सकते हैं। इस लेख में, हम आपको दिखाएंगे कि कैसे VBA कोड का उपयोग करके किसी एक्सेल फ़ाइल से टेक्स्ट फ़ाइल में डेटा की प्रतिलिपि बनाएँ या लिखें।

VBA का उपयोग करके डेटा को टेक्स्ट फ़ाइलों में कैसे लिखें?

एक्सेल से टेक्स्ट में डेटा लिखना जटिल कोडिंग है और इसके लिए VBA कोडिंग की बहुत अच्छी जानकारी की आवश्यकता होती है। एक फ़ाइल में एक्सेल से डेटा कॉपी करने के लिए VBA कोड लिखने के लिए नीचे दिए गए चरणों का पालन करें।

इससे पहले कि मैं आपको कोड लिखने का तरीका दिखाऊं, मैं समझाता हूं कि खुले विवरण का उपयोग करके पाठ फ़ाइल कैसे खोलें।

ओपन टेक्स्ट फाइल का सिंटैक्स

ओपन (फाइल पाथ), फॉर (मोड), अस (फाइल नंबर)

फ़ाइल पथ: फ़ाइल का पथ जिसे हम कंप्यूटर पर खोलने का प्रयास कर रहे हैं।

मोड: मोड वह नियंत्रण है जो हमारे पास पाठ फ़ाइलों को खोलने पर हो सकता है। टेक्स्ट फाइल पर हमारा तीन तरह का नियंत्रण हो सकता है।

  • इनपुट मोड: यह शुरुआती पाठ फ़ाइल के " रीड-ओनली " नियंत्रण का सुझाव देता है । यदि हम "इनपुट मोड" का उपयोग करते हैं, तो हम फ़ाइल के साथ कुछ भी नहीं कर सकते हैं। हम केवल पाठ फ़ाइल की सामग्री पढ़ सकते हैं।
  • आउटपुट मोड: इस विकल्प का उपयोग करके, हम इस पर सामग्री लिख सकते हैं। यहां हमें जिस बिंदु को याद रखने की आवश्यकता है, वह सभी मौजूदा डेटा को ओवरराइट कर दिया जाएगा। इसलिए, हमें पुराने डेटा के संभावित नुकसान से सावधान रहना होगा।
  • परिशिष्ट मोड: यह विधा आउटपुट मोड से पूरी तरह विपरीत है इस पद्धति का उपयोग करके, हम वास्तव में फ़ाइल में मौजूदा डेटा के अंत में नया डेटा लिख ​​सकते हैं।

फ़ाइल संख्या: यह सभी खोले गए पाठ फ़ाइलों की पाठ फ़ाइल संख्या की गणना करेगा। यह पूर्णांक मानों में खोले गए फ़ाइल नंबरों को 1 से 511 तक पहचानता है। फ़ाइल नंबर को असाइन करना मुश्किल है और बहुत भ्रम पैदा करता है। इसके लिए हम फ्री फाइल फंक्शन का इस्तेमाल कर सकते हैं।

मुक्त फ़ाइल खोली गई फ़ाइलों के लिए अद्वितीय संख्या देता है। इस तरह, हम किसी भी तरह के डुप्लिकेट मानों के बिना अद्वितीय फ़ाइल नंबर असाइन कर सकते हैं।

उदाहरण 1

नई टेक्स्ट फ़ाइल बनाने के लिए कोड लिखने के लिए नीचे दिए गए चरणों का पालन करें।

मान लें कि आपके पास पहले से ही आपके कंप्यूटर स्टोरेज में एक टेक्स्ट फाइल है जिसका नाम "Hello.txt" है, और हम आपको दिखाएंगे कि इसमें डेटा कैसे लिखें।

चरण 1: परिवर्तनीय घोषित करें

स्ट्रिंग को फ़ाइल पथ को स्ट्रिंग के रूप में रखने के लिए घोषित करें।

कोड:

उप TextFile_Example1 () समाप्ति पथ उप के रूप में मंद पथ
चरण 2: फ़ाइल संख्या निर्धारित करें

यह निर्धारित करने के लिए कि हम किस फ़ाइल संख्या का उल्लेख कर रहे हैं, एक और चर को पूर्णांक के रूप में घोषित करते हैं।

कोड:

उप TextFile_Example1 () अंत पथ अंत के रूप में स्ट्रिंग फ़ाइल के रूप में मंद पथ
चरण 3: फ़ाइल पथ असाइन करें

अब पथ चर के लिए, फ़ाइल पथ को फ़ाइल नाम के साथ असाइन करें।

कोड:

उप TextFile_Example1 () डिम पाथ स्ट्रिंग ऐज डिम फाइलनंबर इंटर्जर पाथ के रूप में = "D: Excel Files VBA File Hello.txt" 'अपनी आवश्यकता के अनुसार पथ बदलें अंत उप
चरण 4: नि: शुल्क फ़ाइल फ़ंक्शन असाइन करें

अब फ़ाइल संख्या चर के लिए, अद्वितीय फ़ाइल संख्याओं को संग्रहीत करने के लिए फ़ंक्शन "फ्री फ़ाइल" असाइन करें।

कोड:

Sub TextFile_Example1 () डिम पाथ स्ट्रिंग ऐज डिम फाइलनंबर इंटर्जर पाथ = "D: Excel Files VBA File Hello.txt" 'अपनी आवश्यकता के अनुसार पथ बदलें FileNumber = FreeFile End Sub
चरण 5: पाठ फ़ाइल खोलें

अब हमें इसके साथ काम करने के लिए टेक्स्ट फ़ाइल खोलने की आवश्यकता है। जैसा कि मैंने समझाया है, हमें टेक्स्ट फाइल खोलने के लिए OPEN स्टेटमेंट का उपयोग करना होगा।


चरण 6: प्रिंट / लिखने की विधि का उपयोग करें

एक बार फाइल खुल जाने के बाद, हमें उसमें कुछ लिखना होगा। पाठ फ़ाइल में लिखने के लिए हमें "लिखो" या "प्रिंट" विधि का उपयोग करना होगा।

कोड:

Sub TextFile_Example1() Dim Path As String Dim FileNumber As Integer Path = "D:Excel FilesVBA FileHello.txt" 'Change the path as per your requirement FileNumber = FreeFile Open Path For Output As FileNumber Print #FileNumber, "Welcome" Print #FileNumber, "to" Print #FileNumber, "VBA" End Sub

First, we need to mention the file number (here we have assigned the file through the “filenumber” variable), then we need to add the content we want to add to a text file.

Step 7: Save and Close Text File

Once the content is written in a text file, we need to save and close the text file.

Code:

Sub TextFile_Example1() Dim Path As String Dim FileNumber As Integer Path = "D:Excel FilesVBA FileHello.txt" 'Change the path as per your requirement FileNumber = FreeFile Open Path For Output As FileNumber Print #FileNumber, "Welcome" Print #FileNumber, "to" Print #FileNumber, "VBA" Close FileNumber End Sub

Now, run the code this manually or through shortcut excel key F5. It will write the mentioned content in the mentioned text file.

Example #2

Now we will see how to write the data of excel sheet to a text file.

For this example, I have created simple data in excel like below.

Step 1: With the continuation of the old example, define two more variables as Integer to find the last row and last column.

Code:

Sub TextFile_Example2() Dim Path As String Dim FileNumber As Integer Dim LR As Integer Dim LC As Integer End Sub

Step 2: Find the last used row and column in the worksheet.

Step 3: Now assign the file path and file number.

Step 4: Now, use the OPEN statement to open the text file.

Step 5: We need to loop through rows and columns, so declare two more variables as Integer.

Step 6: Now open Loop to loop through the row (For next loop in VBA)

Step 7: Now, to loop through columns, open one more loop inside the existing loop.

Step 8: We need to write the same line of data until it reaches the last column. So for this, apply the IF statement in VBA.

Step 9: Now, save and close the text file.

This code will write the details to a text file, but to open the text file after written, we need to use the below code.

Code:

Sub TextFile_Example2() Dim Path As String Dim FileNumber As Integer Dim LR As Integer Dim LC As Integer Dim k As Integer Dim i As Integer LR = Worksheets("Text").Cells(Rows.Count, 1).End(xlUp).Row LC = Worksheets("Text").Cells(1, Columns.Count).End(xlToLeft).Column Path = "D:Excel FilesVBA FileHello.txt" FileNumber = FreeFile Open Path For Output As FileNumber For k = 1 To LR For i = 1 To LC If i LC Then Print #FileNumber, Cells(i, k), Else Print #FileNumber, Cells(i, k) End If Next i Next k Close FileNumber Shell "notepad.exe " & Path, vbNormalFocus End Sub

इसलिए, F5 कुंजी या मैन्युअल रूप से कोड का उपयोग करें। फिर, यह नीचे दिए गए डेटा की प्रतिलिपि बनाएगा।

दिलचस्प लेख...