VBA Rakstīt teksta failu | Rakstiet Excel datus teksta failos, izmantojot VBA kodu
Excel VBA Rakstīt teksta failu
VBA mēs varam atvērt, lasīt vai rakstīt teksta failu, lai rakstītu teksta failu, mēs domājam datus, kas ir Excel lapā, un mēs vēlamies, lai tie būtu teksta failā vai piezīmju bloka failā, ir divas metodes, viena no tām ir izmantojot VBA faila rekvizītu File System un citu, izmantojot VBA Open and write metodi.
Pēc pārskata pabeigšanas lielākajā daļā korporatīvo uzņēmumu viņi vēlas augšupielādēt ziņojumu datu bāzē. Lai augšupielādētu datu bāzē, datu bāzes atjaunināšanai viņi izmanto “Text Files” formātu. Mēs parasti kopējam datus no Excel un ielīmējam teksta failā. Iemesls, kāpēc mēs paļaujamies uz teksta failiem, jo ar tiem ir ļoti viegli strādāt to vieglo un vienkāršāko veidu dēļ. Izmantojot VBA kodēšanu, mēs varam automatizēt uzdevumu kopēt datus no Excel faila uz teksta failu. Šajā rakstā mēs parādīsim, kā kopēt vai rakstīt datus no Excel faila uz teksta failu, izmantojot VBA kodu.
Kā rakstīt datus teksta failos, izmantojot VBA?
Datu rakstīšana no Excel uz tekstu ir sarežģīta kodēšana un prasa ļoti labas zināšanas par VBA kodēšanu. Veiciet tālāk norādītās darbības, lai ierakstītu VBA kodu, lai datus kopētu no Excel uz teksta failu.
Pirms parādīšu koda rakstīšanas veidu, ļaujiet man paskaidrot, kā atvērt teksta failu, izmantojot atvērtu paziņojumu.
Atvērtā teksta faila sintakse
Atveriet [Faila ceļš], [Režīms], Kā [Faila numurs]
Faila ceļš: faila ceļš, kuru mēģinām atvērt datorā.
Režīms: režīms ir vadība, kas mums ļauj piekļūt teksta failu atvēršanai. Mums var būt trīs veidu kontrole pār teksta failu.
- Ievades režīms: tas iesaka atvērtā faila kontroli tikai lasīšanai . Ja mēs izmantojam “Ievades režīmu”, mēs nevaram neko darīt ar failu. Mēs varam vienkārši izlasīt teksta faila saturu.
- Izejas režīms: izmantojot šo opciju, mēs varam tajā ierakstīt saturu. Šeit mums jāatceras, ka visi esošie dati tiks pārrakstīti. Tātad, mums ir jāuzmanās no veco datu iespējamā zaudēšanas.
- Pievienot režīmu: Šis režīms ir pilnīgi pretējs OutPut režīmam. Izmantojot šo metodi, mēs faktiski varam ierakstīt jaunos datus failā esošo datu beigās.
Faila numurs: Tas saskaitīs visu atvērto teksta failu teksta faila numuru. Tas atvērto failu numurus atpazīs veselu skaitļu vērtībās no 1 līdz 511. Faila numura piešķiršana ir grūts un rada daudz neskaidrību. Šim nolūkam mēs varam izmantot bezmaksas funkciju File.
Bezmaksas fails atgriež atvērto failu unikālo numuru. Tādā veidā mēs varam piešķirt unikālu faila numuru bez jebkāda veida dublētām vērtībām.
Šo VBA Write Text File Template varat lejupielādēt šeit - VBA Write Text File Template1. piemērs
Lai izveidotu jaunu teksta failu, veiciet tālāk norādītās darbības.
Pieņemsim, ka jūsu datora krātuvē jau ir bijis teksta fails ar nosaukumu “Hello.txt”, un mēs parādīsim, kā tajā ierakstīt datus.
1. darbība: paziņojiet mainīgo
Paziņojiet mainīgajam, kas faila ceļu tur kā virkni.
Kods:
Sub TextFile_Example1 () Dim Ceļš kā virknes beigas Sub
2. darbība: nosakiet faila numuru
Lai noteiktu, uz kura faila numuru mēs atsaucamies, vēl vienu mainīgo deklarētu kā veselu skaitli.
Kods:
Sub TextFile_Example1 () Dim Ceļš kā virkne Dim FileNumber kā Integer End Sub
3. darbība: piešķiriet faila ceļu
Tagad mainīgais ceļš piešķir faila ceļu ar faila nosaukumu.
Kods:
Sub TextFile_Example1 () Dim Ceļš kā virkne Dim FileNumber As Integer Ceļš = "D: \ Excel Files \ VBA File \ Hello.txt" 'Mainiet ceļu atbilstoši savām prasībām End Sub
4. darbība. Piešķiriet bezmaksas faila funkciju
Tagad faila numura mainīgajam piešķiriet funkciju “Free File”, lai saglabātu unikālu faila numuru.
Kods:
Sub TextFile_Example1 () Dim Ceļš kā virkne Dim FileNumber As Integer Ceļš = "D: \ Excel Files \ VBA File \ Hello.txt" 'Mainiet ceļu atbilstoši savām prasībām FileNumber = FreeFile End Sub
5. darbība: atveriet teksta failu
Tagad mums jāatver teksta fails, lai ar to darbotos. Kā jau paskaidroju, teksta faila atvēršanai jāizmanto paziņojums OPEN.
6. darbība: izmantojiet drukas / rakstīšanas metodi
Kad fails ir atvērts, mums tajā kaut kas jāieraksta. Lai ierakstītu teksta failā, mums jāizmanto metode “Rakstīt” vai “Drukāt”.
Kods:
Sub TextFile_Example1 () Dim Ceļš kā virkne Dim FileNumber As Integer Path = "D: \ Excel Files \ VBA File \ Hello.txt" 'Mainiet ceļu atbilstoši savām prasībām FileNumber = FreeFile atvērtais izejas ceļš kā FileNumber Print #FileNumber, " Laipni lūdzam sadaļā "Drukāt # faila numuru" uz sadaļu "Drukāt # faila numuru", "VBA" beigu apakšdaļu
Pirmkārt, mums jāpiemin faila numurs (šeit mēs esam piešķīruši failu, izmantojot mainīgo “FileNumber”), pēc tam mums jāpievieno saturs, kuru mēs vēlamies pievienot teksta failam.
7. darbība: Saglabājiet un aizveriet teksta failu
Kad saturs ir ierakstīts teksta failā, mums tas jāsaglabā un jāaizver.
Kods:
Sub TextFile_Example1 () Dim Ceļš kā virkne Dim FileNumber As Integer Path = "D: \ Excel Files \ VBA File \ Hello.txt" 'Mainiet ceļu atbilstoši savām prasībām FileNumber = FreeFile atvērtais ceļš izvadei kā FileNumber Print # FileNumber, Laipni lūdzam sadaļā "Print #FileNumber" uz "Print #FileNumber," VBA ". Aizvērt FileNumber End Sub
Tagad palaidiet kodu manuāli vai ar īsinājumtaustiņu Excel taustiņu F5, tas rakstīs minēto saturu minētajā teksta failā.
2. piemērs
Tagad mēs redzēsim, kā Excel lapas datus ierakstīt teksta failā.
Šajā piemērā es esmu izveidojis vienkāršus datus programmā Excel, piemēram, zemāk.
1. solis: turpinot veco piemēru, definējiet vēl divus mainīgos kā veselu skaitli, lai atrastu pēdējo rindu un pēdējo kolonnu.
Kods:
Sub TextFile_Example2 () Dim Ceļš kā virkne Dim FileNumber kā Integer Dim LR kā Integer Dim LC kā Integer End
2. darbība: darblapā atrodiet pēdējo izmantoto rindu un kolonnu.
3. solis: Tagad piešķiriet faila ceļu un faila numuru.
4. solis: Tagad atveriet tekstu OPEN, lai atvērtu teksta failu.
5. solis: Mums ir jākontrolē rindas un kolonnas, tāpēc paziņojiet vēl divus mainīgos kā veselu skaitli.
6. solis: Tagad atveriet cilpu, lai pārietu caur rindu (nākamajai VBA cilpai)
7. solis: Tagad, lai izveidotu cilpu, atveriet vēl vienu cilpu esošās cilpas iekšpusē.
8. solis: Mums ir jāraksta tā pati datu rinda, līdz tā sasniedz pēdējo kolonnu. Tāpēc šim nolūkam piemēro IF paziņojumu VBA.
9. solis: Tagad saglabājiet un aizveriet teksta failu.
Šis kods rakstīs informāciju teksta failā, bet, lai atvērtu teksta failu pēc rakstīšanas, mums jāizmanto zemāk redzamais kods.
Kods:
Sub TextFile_Example2 () Dim Ceļš kā Virkne .Row LC = Darblapas ("Teksts"). Šūnas (1, Columns.Count) .End (xlToLeft) .Column Path = "D: \ Excel Files \ VBA File \ Hello.txt" FileNumber = FreeFile atvērtais ceļš izvadīšanai kā FileNumber Par k = 1 līdz LR Par i = 1 LC Ja i LC, tad izdrukājiet #FileNumber, Cells (i, k), Cita drukāt #FileNumber, Cells (i, k) Beigt Ja Nākamais i Nākamais k Aizvērt FileNumber Shell "piezīmju bloks .exe "un ceļš, vbNormalFocus End Sub
Tātad, palaidiet kodu, izmantojot F5 taustiņu vai manuāli, pēc tam tas kopēs datus, piemēram, zemāk.