Excel VBA Kirjoita tekstitiedosto
VBA: ssa voimme avata, lukea tai kirjoittaa tekstitiedoston, tekstitiedoston kirjoittaminen tarkoittaa tietoja, jotka meillä on Excel-taulukossa ja haluamme sen tekstitiedostoksi tai muistilehtiötiedostoksi, on kaksi tapaa tehdä, yksi on VBA: n File System object -ominaisuuden ja toisen käyttäminen tapahtuu VBA: n Avaa ja kirjoita -menetelmällä.
Useimmissa yritysyrityksissä, kun raportti on valmis, ne haluavat ladata raportin tietokantaan. Lataamiseen tietokantaan he käyttävät "Tekstitiedostot" -muotoa päivittääksesi tietokannan. Yleensä kopioimme tiedot Excelistä ja liitämme ne tekstitiedostoon. Syy siihen, miksi luotamme tekstitiedostoihin, koska niiden kanssa on erittäin helppo työskennellä kevyiden ja yksinkertaisempien tapojensa vuoksi. VBA-koodausta käyttämällä voimme automatisoida tietojen kopioinnin Excel-tiedostosta tekstitiedostoon. Tässä artikkelissa näytämme, kuinka voit kopioida tai kirjoittaa tietoja Excel-tiedostosta tekstitiedostoon VBA-koodin avulla.

Kuinka kirjoittaa tietoja tekstitiedostoihin VBA: n avulla?
Tietojen kirjoittaminen Excelistä tekstiksi on monimutkaista koodausta ja vaatii erittäin hyvää tietoa VBA-koodauksesta. Kirjoita VBA-koodi seuraavien ohjeiden mukaan kopioidaksesi tiedot Excelistä tekstitiedostoon.
Ennen kuin näytän sinulle koodin kirjoittamistavan, anna minun selittää, kuinka tekstitiedosto avataan avoimen käskyn avulla.
Syntaksi avoimen tekstitiedoston
Avaa (tiedostopolku), kohteelle (tila), nimellä (tiedoston numero)
Tiedoston polku: Tiedoston polku, jota yritämme avata tietokoneella.
Tila: Tila on hallinta, jolla voimme avata tekstitiedostoja. Tekstitiedostoa voidaan hallita kolmella eri tavalla.
- Syöttötila: Tämä ehdottaa avaavan tekstitiedoston hallintaa vain luku -tilassa . Jos käytämme syöttötilaa, emme voi tehdä mitään tiedoston kanssa. Voimme vain lukea tekstitiedoston sisällön.
- Tulostustila: Tätä vaihtoehtoa käyttämällä voimme kirjoittaa siihen sisällön. Meidän on muistettava, että kaikki olemassa olevat tiedot korvataan. Joten meidän on varottava vanhojen tietojen mahdollisesta menettämisestä.
- Liitä tila: Tämä tila on täysin vastakohta OutPut-tilalle. Tätä menetelmää käyttämällä voimme itse kirjoittaa uudet tiedot tiedostossa olevien tietojen loppuun.
Tiedostonumero: Tämä laskee kaikkien avattujen tekstitiedostojen tekstitiedostojen numerot. Tämä tunnistaa avatut tiedostonumerot kokonaislukuina 1: stä 511: een. Tiedostonumeron määrittäminen on hankalaa ja aiheuttaa paljon sekaannusta. Tätä varten voimme käyttää ilmaista File-toimintoa.
Vapaa tiedosto palauttaa avattujen tiedostojen yksilöllisen numeron. Tällä tavalla voimme määrittää yksilöllisen tiedostonumeron ilman minkäänlaisia päällekkäisiä arvoja.
Esimerkki 1
Luo uusi tekstitiedosto kirjoittamalla koodi noudattamalla seuraavia ohjeita.
Oletetaan, että sinulla on jo ollut "Hello.txt" -tekstitiedosto tietokoneesi tallennustilassa, ja näytämme sinulle, miten tiedot kirjoitetaan siihen.
Vaihe 1: Ilmoita muuttuja
Määritä muuttuja pitämään tiedostopolku merkkijonona.
Koodi:
Sub TextFile_Example1 () Himmennä polku merkkijonona End Sub

Vaihe 2: Määritä tiedoston numero
Selvitäksesi mihin tiedostonumeroon viittaamme, ilmoita yksi muuttuja kokonaislukuna.
Koodi:
Alitekstitiedosto_esimerkki1 () Himmennä polku merkkijonona Himmennä tiedostonumero kokonaislukuna loppuosa Alitiedosto

Vaihe 3: Määritä tiedostopolku
Määritä nyt Path-muuttujalle tiedostopolku tiedostonimellä.
Koodi:
Sub TextFile_Example1 () Himmennä polku merkkijonona Himmennä FileNumber kuin kokonaisluku = "D: Excel Files VBA File Hello.txt" 'Muuta polkua vaatimuksesi mukaan End Sub

Vaihe 4: Määritä ilmainen tiedostotoiminto
Määritä nyt File Number -muuttujalle toiminto "Free File" yksilöllisten tiedostojen numeroiden tallentamiseksi.
Koodi:
AlitekstiFile_Example1 () Himmennä polku merkkijonona Himmennä tiedoston numero kokonaislukupoluna = "D: Excel Files VBA File Hello.txt" 'Muuta polkua vaatimuksesi mukaan FileNumber = FreeFile End Sub

Vaihe 5: Avaa tekstitiedosto
Nyt meidän on avattava tekstitiedosto toimiakseen sen kanssa. Kuten olen selittänyt, meidän on käytettävä OPEN-käskyä tekstitiedoston avaamiseen.

Vaihe 6: Käytä tulostus- / kirjoitusmenetelmää
Kun tiedosto on avattu, meidän on kirjoitettava siihen jotain. Kirjoittaaksesi tekstitiedostoon meidän on käytettävä joko “Kirjoita” tai “Tulosta” menetelmää.
Koodi:
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
Suorita siis koodi käyttämällä F5-näppäintä tai manuaalisesti. Sitten se kopioi alla olevat tiedot.
