Schrijf een tekstbestand in Excel VBA

We komen allemaal in een dergelijke situatie terecht waarin we enorme gegevens in Excel-bestanden moesten plaatsen, maar uiteindelijk hebben we de situatie geconfronteerd toen de grootte van dat bestand met de enorme gegevens zo omhoog ging dat we dat moesten omzetten in een tekst het dossier. Hierdoor konden we noch aan dat bestand werken, noch het bestand in Excel-indeling opslaan. Dit soort situaties hebben we in veel projecten gezien waarbij we de gegevens uit de database moeten extraheren. Het extraheren van de gegevens uit de database is mogelijk als u hiervoor een tekstbestand gebruikt. Het tekstbestand loopt niet vast en we kunnen zoveel gegevens en tabellen opslaan in een enkel tekstbestand zonder het bestand te laten crashen. Hiervoor moeten we het Excel-bestand omzetten in een tekstbestand. Hoewel het geen grote taak is wanneer het een repetitieve activiteit is en het enorm lang kan duren om het uit te voeren.

Om dit te voorkomen, hebben we een proces in VBA, waarmee we het Excel-bestand kunnen converteren naar een tekstbestand zonder de gegevens te beschadigen. Hiermee kunnen we een enorme set gegevens in het tekstbestand opslaan door de bestandsgrootte ook te verkleinen en te comprimeren.

Het begrijpen van de VBA-code voor het schrijven van het tekstbestand is vrij complex, maar het is niet moeilijk te begrijpen.

Proces gevolgd:

  • Bestandspad: het pad van het bestand plaatsen waar we het Excel-bestand hebben bewaard.
  • Modus: Voor welk doel moeten we het bestand openen. Het kan de alleen-lezen modus of schrijfdoel zijn of we moeten het gebruiken voor het toevoegen van de gegevens.
  • Bestandsnummer: hiermee kunnen we het aantal keren tellen dat we hebben gebruikt voor het Excel-bestand voor een tekstbestand.

Hoe een tekstbestand te schrijven in Excel VBA?

We zullen leren hoe een tekstbestand te schrijven met behulp van VBA-code in excel met een paar voorbeelden.

U kunt deze VBA-tekstbestand Excel-sjabloon hier downloaden - VBA-tekstbestand Excel-sjabloon

Voorbeeld # 1 - VBA-tekstbestand schrijven

In dit voorbeeld zullen we zien hoe we de bestandslocatie met VBA-code kunnen toewijzen om het over het tekstbestandsformaat te schrijven. Hiervoor hebben we een module nodig.

Stap 1: Ga naar de menu-optie Invoegen en selecteer Module zoals hieronder getoond.

Stap 2: Schrijf nu in de geopende module de subcategorie van VBA Write Text of we kunnen elke gewenste naam kiezen volgens onze keuze.

Code:

 Sub WriteTextFile2 () Einde Sub 

Stap 3: Declareer in de eerste stap van de codering de variabele myFile als String zoals hieronder getoond.

Code:

 Sub WriteTextFile2 () Dim myFile As String End Sub 

Stap 4: Zet in de toegewezen variabele de locatie van het bestand dat we moeten converteren van Excel naar tekst. Hier hebben we dat bestand de naam Test gegeven met de extensie. txt zoals hieronder getoond.

Code:

 Sub WriteTextFile2 () Dim myFile As String myFile = "D: \ VPB File \ April Files \ Final location \ Final Input.txt" End Sub 

Stap 5: Zoals we hebben gezien in de beschrijving van VBA Write Text File, zullen we eerst het excel-bestand openen en vervolgens de gegevens van Excel toevoegen aan een tekstbestand met onderstaande opdrachtregel.

Code:

 Sub WriteTextFile2 () dim myFile As String myFile = "D: \ VPB File \ April Files \ Final location \ Final Input.txt" Open myFile voor toevoegen als # 1 End Sub 

Stap 6: Laten we nu wat tekst in een tekstbestand plaatsen dat we graag zouden willen zien zoals hieronder getoond met behulp van Write # 1 voor de eerste tabel. We hebben een aantal willekeurige automerken ingevoerd met de modelnaam en specificaties.

Code:

 Sub WriteTextFile2 () dim myFile As String myFile = "D: \ VPB File \ April Files \ Final location \ Final Input.txt" Open myFile voor toevoegen als # 1 Write # 1, "Ford", "Figo", 1000, " miles ", 2000 Schrijf # 1, " Toyota ", " Etios ", 2000, " miles ", End Sub 

Stap 7: Sluit nu de eerste tabel zoals hieronder getoond.

Code:

 Sub WriteTextFile2 () dim myFile As String myFile = "D: \ VPB File \ April Files \ Final location \ Final Input.txt" Open myFile voor toevoegen als # 1 Write # 1, "Ford", "Figo", 1000, " miles ", 2000 Schrijf # 1, " Toyota ", " Etios ", 2000, " miles ", Close # 1 End Sub 

Stap 8: We willen het bericht ook graag zien zodra het proces is voltooid.

Code:

 Sub WriteTextFile2 () dim myFile As String myFile = "D: \ VPB File \ April Files \ Final location \ Final Input.txt" Open myFile voor toevoegen als # 1 Write # 1, "Ford", "Figo", 1000, " mijlen ", 2000 Write # 1, " Toyota ", " Etios ", 2000, " miles ", Sluiten # 1 MsgBox" Opgeslagen "End Sub 

Stap 9: compileer nu de code en voer deze uit door te klikken op de knop Afspelen onder de menubalk, zoals hieronder weergegeven. Als er geen fout wordt gevonden, krijgen we het berichtvak met het bericht Opgeslagen zoals hieronder weergegeven.

Stap 10: Ga nu naar de locatie die we in de bovenstaande code hebben vermeld, we zien het tekstbestand met de naam Test zoals hieronder weergegeven.

Om te controleren of dit tekstbestand dezelfde gegevens bevat die we via VBA hebben ingevoerd, opent u het. We zullen zien dat dezelfde gegevens zijn ingevoerd.

Voorbeeld # 2 - VBA-tekstbestand schrijven

Er is een andere manier om hetzelfde werk te doen.

Stap 1: In het voorbeeld gebruiken we dezelfde code die we hierboven hebben geschreven, maar er zou een kleine wijziging in de gebruikte code zijn. Laten we dezelfde code beschouwen als getoond in voorbeeld-1.

Code:

 Sub WriteTextFile2 () dim myFile As String myFile = Open myFile voor toevoegen als # 1 schrijven # 1, "Ford", "Figo", 1000, "miles", 2000 schrijven # 1, "Toyota", "Etios", 2000, "miles", Sluiten # 1 MsgBox "Opgeslagen" End Sub 

Stap 2: Selecteer nu in plaats van de bestandslocatie de actieve werkmap met ActiveWorkbook zoals hieronder weergegeven.

Code:

 Sub WriteTextFile2 () Dim myFile As String myFile = ActiveWorkbook. Open myFile voor toevoegen als # 1 schrijven # 1, "Ford", "Figo", 1000, "miles", 2000 schrijven # 1, "Toyota", "Etios", 2000, "miles", Sluiten # 1 MsgBox "Opgeslagen "Einde Sub 

Stap 3: Selecteer nu het pad in de vervolgkeuzelijst van ActiveWorkBook .

Code:

 Sub WriteTextFile2 () Dim myFile As String myFile = ActiveWorkbook.Path Open myFile voor toevoegen als # 1 schrijven # 1, "Ford", "Figo", 1000, "miles", 2000 Write # 1, "Toyota", "Etios", 2000, "miles", Sluiten # 1 MsgBox "Opgeslagen" End Sub 

Stap 4: Selecteer vervolgens het pad waar we de gegevens aan het tekstbestand moeten toevoegen, gescheiden door een en-teken.

Code:

 Sub WriteTextFile2 () dim myFile As String myFile = ActiveWorkbook.Path & "\ VPB File" Open myFile voor toevoegen als # 1 Schrijf # 1, "Ford", "Figo", 1000, "miles", 2000 Write # 1, " Toyota ", " Etios ", 2000, " miles ", Sluiten # 1 MsgBox" Opgeslagen "End Sub 

Stap 5: compileer nu opnieuw de code en voer deze daarna uit. Na de succesvolle uitvoering van de run, krijgen we het bericht als Opgeslagen .

Ga nu opnieuw naar dat pad waar we dit bestand met de code hebben bewaard en kijk of het tekstbestand daar is opgeslagen of niet.

Open nu het bestand om te controleren of de gegevens correct zijn toegevoegd of niet. We zullen zien dat gegevens op dezelfde manier worden toegevoegd als in voorbeeld-1.

Voordelen van Excel VBA Tekstbestand schrijven

  • We hoeven niet eens een bestand te openen om de gegevens toe te voegen.
  • Als de gegevens enorm zijn, kunnen we de gegevens van Excel aan tekst toevoegen zonder het bestand te openen. Er is dus ook geen probleem bij het verwerken van het bestand.
  • Als we het proces volgen dat wordt gedeeld in voorbeeld-2, hoeven we niet eens het pad op te geven waar we het uitgevoerde tekstbestand willen zien.

Dingen om te onthouden

  • In het proces dat wordt getoond in voorbeeld-1, kunnen we het bestand op de locatie plaatsen waar we de uitvoer willen zien.
  • In het proces dat wordt getoond in voorbeeld-2, zal het automatisch de bestandslocatie overwegen die de VBA-code van VBA Write Text File heeft.
  • We kunnen zelfs de gegevens selecteren uit elk Excel-bestand dat we in het tekstbestand willen converteren.
  • We kunnen er zoveel selecteren en maken als een tabel die we in het tekstbestand willen toevoegen.

Aanbevolen artikelen

Dit is een handleiding voor VBA Write Text File. Hier bespreken we hoe u een tekstbestand in Excel kunt schrijven met behulp van VBA-code, samen met praktische voorbeelden en een downloadbare Excel-sjabloon. U kunt ook onze andere voorgestelde artikelen doornemen -

  1. VBA InStr uitgelegd met voorbeelden
  2. VBA Geheel gegevenstype
  3. VBA ISNULL verklaard met voorbeelden
  4. Transponeer een bereik in VBA

Categorie: