VBA FreeFile | Kaip naudoti „FreeFile“ funkciją „Excel VBA“?

„Excel VBA FreeFile“

„FreeFile“ yra VBA funkcija, kuri yra prieinama tik kaip VBA funkcija, o ne kaip darbalapio funkcija. VBA FreeFile funkcija grąžina unikalų sveiko skaičiaus skaičių į atidarytą failą ir išsaugo kito galimo failo numerį.

Mes paprastai atidarome failus iš savo kompiuterio, norėdami ką nors parašyti arba tik skaityti, o nurodydami tuos failus, turime nurodyti unikalų sveikąjį skaičių. VBA FreeFile funkcija leidžia mums nustatyti tą unikalų sveikojo skaičiaus skaičių, kurį reikia priskirti atidarant failą skaityti, rašyti ir atidaryti failus naudojant VBA.

Dabar pažvelk į OPEN teiginio sintaksę.

ATIDARYTI [Failo kelio adresas] [Atidaryti režimą] kaip [Failo numeris]

Failo kelio adresas: turime nurodyti failo adresą savo kompiuteryje, kurį bandome atidaryti.

Atidarymo režimas: atidarydami failą turime žinoti, kokį modelį taikysime. Čia galime naudoti tris režimus: „Įvesties režimas“, „Išvesties režimas“ ir „Papildymo režimas“.

Įvesties režimas skaityti tik failą.

Išvesties režimas ištrinti esamus duomenis ir įterpti naujus duomenis.

Pridėti režimą, jei norite pridėti naujų duomenų, išlaikydami esamus duomenis.

Failo numeris: naudodami šį argumentą galime nurodyti failą, kurį atidarome. Čia „FreeFile“ funkcija vaidina gyvybiškai svarbų vaidmenį ir pateikia unikalų sveikojo skaičiaus skaičių.

Kaip naudoti „FreeFile“ funkciją „Excel VBA“?

Šį „VBA FreeFile Excel“ šabloną galite atsisiųsti čia - „VBA FreeFile Excel“ šablonas

Dabar pažvelkite į žemiau pateiktą kodą.

Kodas:

 Sub FreeFile_Example1 () Dim kelias kaip eilutė Dim FileNumber kaip sveikojo kelio = "D: \ Article \ 2019 \ File 1.txt" FileNumber = FreeFile atviras išvesties kelias kaip FileNumber Path = "D: \ Article \ 2019 \ File 2.txt "FileNumber = FreeFile atviras išvesties kelias kaip FileNumber End Sub 

Dabar leiskite man iššifruoti aukščiau pateiktą kodą, kad suprastumėte.

Pirmiausia aš paskelbiau du kintamuosius.

 „Dim“ kelias kaip eilutė, „Dim FileNumber“ kaip sveikas skaičius 

Tada aš priskyriau failo kelią su jo pavadinimu.

Kelias = "D: \ Article \ 2019 \ File 1.txt"

Tada dar vienam kintamajam priskyriau funkciją FREEFILE.

FileNumber = FreeFile

Tada aš naudoju „Open“ sakinį norėdamas atidaryti teksto failą aukščiau minėtame failo kelyje.

 Atidarykite išvesties kelią kaip „FileNumber“

Gerai, dabar vykdysiu eilutę po eilutės paspausdamas klavišą F8 ir pamatysiu kintamojo „FileNumber“ vertę.

Failo numeris rodomas kaip 1. Taigi, nemokamo failo funkcija automatiškai rezervuoja šį numerį atidarymo failui. Vykdant tai, kiti failai nėra atidaryti.

Dabar aš vykdysiu kitą VBA kodo eilutę ir pamatysiu, koks yra failo numeris, jei pereisiu į kitą eilutę.

Dabar sakoma 2. Taigi „FreeFile“ funkcija rezervuoja unikalų sveikąjį skaičių 2 antram atidaromajam failui.

„FreeFile“ funkcija visada grąžina 1, jei uždarome „Excel“ failą

Vienas dalykas, į kurį turime atkreipti dėmesį, yra VBA „FreeFile“ funkcija visada pateikia 1, jei uždarome atidarytą failą prieš atidarant antrąjį „Excel“ failą.

Pavyzdžiui, pažvelkite į žemiau pateiktą kodą.

Kodas:

 Sub FreeFile_Example2 () Dim kelias kaip eilutė Dim FileNumber kaip sveikojo kelio = "D: \ Article \ 2019 \ File 1.txt" FileNumber = FreeFile atviras išvesties kelias kaip FileNumber Uždaryti FileNumber Path = "D: \ Article \ 2019 \ File 2 .txt "FileNumber = FreeFile Atviras išvesties kelias kaip FileNumber Uždaryti FileNumber End Sub 

Dabar aš dar kartą vykdysiu kodo eilutę eilute, paspausdamas F8 klavišą.

Kaip įprasta, parašyta 1.

Dabar aš pereisiu į kitą lygį.

Net antrą kartą bandant sakyti 1.

To priežastis yra ta, kad mes naudojome pareiškimą „Uždaryti failą“. „FreeFile“ atpažįsta naujai atidarytą failą kaip naują ir grąžina sveikąjį skaičių kaip 1.