VBA FreeFile | Kā izmantot funkciju FreeFile programmā Excel VBA?

Excel VBA FreeFile

FreeFile ir VBA funkcija, kas ir pieejama tikai kā VBA funkcija, nevis kā darblapas funkcija. VBA FreeFile funkcija atgriež unikālo vesela skaitļa numuru atvērtajā failā un saglabā nākamā pieejamā faila numura numuru.

Mēs parasti atveram failus no sava datora, lai kaut ko uzrakstītu vai tikai lasīšanai, vienlaikus atsaucoties uz šiem failiem, mums jāatsaucas ar unikālu veselu skaitli. VBA FreeFile funkcija ļauj mums noteikt šo unikālo veselu skaitli, kas jāpiešķir faila atvēršanai, lai lasītu, rakstītu un atvērtu failus, izmantojot VBA.

Tagad apskatiet OPEN paziņojuma sintaksi.

ATVĒRT [faila ceļa adrese], lai atvērtu [režīmu, lai atvērtu] kā [faila numuru]

Faila ceļa adrese: mums jāpiemin faila adrese datorā, kuru mēs mēģinām atvērt.

Atvērtais režīms: atverot failu, mums jāapzinās, kāda veida modeli mēs izmantosim. Mēs šeit varam izmantot trīs režīmus: “Input Mode”, “OutPut Mode” un “Append Mode”.

Ievades režīms, lai lasītu tikai failu.

Izvades režīms, lai iznīcinātu esošos datus un ievietotu jaunus datus.

Pievienot režīmu, lai pievienotu jaunus datus, saglabājot esošos datus.

Faila numurs: Izmantojot šo argumentu, mēs varam atsaukties uz failu, kuru mēs atveram. Funkcijai “FreeFile” ir būtiska loma, un tā atgriež unikālo veselu skaitli.

Kā izmantot funkciju FreeFile programmā Excel VBA?

Šo VBA FreeFile Excel veidni varat lejupielādēt šeit - VBA FreeFile Excel veidne

Tagad apskatiet zemāk esošo kodu.

Kods:

 Sub FreeFile_Example1 () Dim ceļš kā virkne Dim FileNumber kā veselais ceļš = "D: \ Articles \ 2019 \ File 1.txt" FileNumber = FreeFile atvērtais izvades ceļš kā FileNumber Path = "D: \ Articles \ 2019 \ File 2.txt "FileNumber = FreeFile atvērtais izejas ceļš kā FileNumber beigu apakšnodaļa 

Tagad ļaujiet man atšifrēt iepriekš minēto kodu, lai jūs to saprastu.

Vispirms esmu deklarējis divus mainīgos.

 Dim ceļš kā virkne, Dim FileNumber kā veselais skaitlis 

Tad es esmu piešķīris faila ceļu ar tā nosaukumu.

Ceļš = "D: \ Raksti \ 2019 \ Fails 1.txt"

Tad vēl vienam mainīgajam esmu piešķīris funkciju FREEFILE.

FileNumber = FreeFile

Tad es esmu izmantojis Open paziņojumu, lai atvērtu teksta failu iepriekš minētajā faila ceļā.

 Atveriet izvades ceļu kā FileNumber

Labi, tagad es darbināšos pa rindai pēc koda, nospiežot taustiņu F8 un redzot mainīgā “FileNumber” vērtību.

Tas parāda faila numuru kā 1. Tātad, bezmaksas failu funkcija automātiski rezervē šo numuru sākuma failam. Šīs palaišanas laikā citi faili netiek atvērti.

Tagad es turpināšu izpildīt nākamo VBA koda rindu un redzēt, kāds ir faila numurs, ja es pārietu uz nākamo rindu.

Tagad tā saka 2. Tātad FreeFile funkcija rezervē unikālo veselu skaitli 2 otrajam atvēršanas failam.

Funkcija FreeFile vienmēr atgriež vērtību 1, ja aizveram Excel failu

Viena lieta, kas mums jāaplūko, ir VBA funkcija “FreeFile” vienmēr atgriež vērtību 1, ja aizveram atvērto failu pirms otrā Excel faila atvēršanas.

Piemēram, apskatiet zemāk redzamo kodu.

Kods:

 Sub FreeFile_Example2 () Dim ceļš kā virkne Dim FileNumber kā veselais ceļš = "D: \ Articles \ 2019 \ File 1.txt" FileNumber = FreeFile atvērtais izvades ceļš kā FileNumber Aizvērt FileNumber Path = "D: \ Articles \ 2019 \ File 2 .txt "FileNumber = FreeFile atvērtais izvades ceļš kā FileNumber Aizvērt FileNumber beigu apakšnodaļu 

Tagad es vēlreiz izpildīšu koda rindu pēc rindas, nospiežot taustiņu F8.

Tajā teikts 1 kā parasti.

Tagad es pārietu uz nākamo līmeni.

Pat otrajā mēģinājumā tas saka 1.

Iemesls tam ir tāpēc, ka mēs izmantojām aizvēršanas faila paziņojumu. FreeFile atpazīst tikko atvērto failu kā jaunu un atgriež veselu skaitli kā 1.


$config[zx-auto] not found$config[zx-overlay] not found