VBA FreeFile - Kako koristiti funkciju FreeFile u programu Excel VBA?

Excel VBA FreeFile

FreeFile je funkcija u VBA-u koja je dostupna samo kao VBA funkcija, a ne kao funkcija radnog lista. VBA FreeFile funkcija vraća jedinstveni cjeloviti broj datoteci koja se otvara i čuva sljedeći dostupni broj datoteke.

Datoteke obično otvaramo s računala ili da bismo nešto napisali ili samo za čitanje, a pozivajući se na te datoteke, moramo se pozivati ​​jedinstvenim cijelim brojem. Funkcija VBA FreeFile omogućuje nam da odredimo taj jedinstveni cjelobrojni broj koji ćemo dodijeliti otvaranju datoteke za čitanje, pisanje i otvaranje datoteka pomoću VBA.

Sada pogledajte sintaksu izjave OPEN.

OTVORENO (Adresa puta datoteke) za (Način otvaranja) Kao (Broj datoteke)

Adresa puta datoteke: Moramo spomenuti adresu datoteke na našem računalu koje pokušavamo otvoriti.

Način za otvaranje: Otvarajući datoteku, moramo znati kakav ćemo model primijeniti. Ovdje možemo koristiti tri načina, "Način unosa", "Izlazni način" i "Dodavanje načina".

Način unosa za čitanje samo datoteke.

Izlazni način za brisanje postojećih podataka i umetanje novih podataka.

Način dodavanja za dodavanje novih podataka uz zadržavanje postojećih podataka.

Broj datoteke: Ovim argumentom možemo se pozvati na datoteku koju otvaramo - tu funkcija "FreeFile" igra vitalnu ulogu i vraća jedinstveni cijeli broj.

Kako koristiti funkciju FreeFile u programu Excel VBA?

Sada pogledajte kod u nastavku.

Kodirati:

Sub FreeFile_Example1 () Zatamni put kao niz Priguši broj datoteke kao cjeloviti put = "D: Članci 2019 Datoteka 1.txt" Broj: = Otvori otvoreni put za FreeFile za izlaz kao Datoteka broja datoteke = "D: Članci 2019 Datoteka 2.txt "FileNumber = Otvoreni put datoteke FreeFile za izlaz kao Kraj broja datoteke

Sada mi dopustite da dekodiram gornji kod da biste ga vi razumjeli.

Prvo, proglasio sam dvije varijable.

Zatamni put kao niz, priguši broj datoteke kao cijeli broj

Tada sam dodijelio put do datoteke s njegovim imenom.

Put = "D: Članci 2019 Datoteka 1.txt"

Tada sam za još jednu varijablu dodijelio funkciju FREEFILE.

FileNumber = FreeFile

Tada sam pomoću izjave Open otvorio tekstualnu datoteku u gore spomenutoj datoteci.

Otvorite put za izlaz kao broj datoteke

Ok, sada ću pokrenuti kôd po redak pritiskom na tipku F8 i vidjeti vrijednost varijable "FileNumber".

Prikazuje broj datoteke kao 1. Dakle, funkcija besplatne datoteke automatski rezervira taj broj za početnu datoteku. Tijekom izvođenja ove datoteke ne otvaraju se druge datoteke.

Sada ću nastaviti izvršavati sljedeći redak VBA koda i vidjeti koliki je broj datoteke ako skočim na sljedeći redak.

Sada piše 2. Dakle, funkcija FreeFile rezervira jedinstveni cijeli broj 2 za drugu otvornu datoteku.

Funkcija FreeFile uvijek daje 1 ako zatvorimo Excel datoteku.

Jedna stvar koju moramo pogledati je da VBA funkcija "FreeFile" uvijek je vraća ako zatvorimo otvorenu datoteku prije otvaranja druge excel datoteke.

Na primjer, pogledajte donji kod.

Kodirati:

Sub FreeFile_Example2 () Zatamni put kao niz Priguši broj datoteke kao cjeloviti put = "D: Članci 2019 Datoteka 1.txt" Broj datoteke = Otvori otvoreni put za FreeFile za izlaz kao broj datoteke Zatvori put broja datoteke = "D: Članci 2019 Datoteka 2 .txt "Broj datoteke = FreeFile Otvoreni put za izlaz kao broj datoteke Zatvori broj datoteke Završi kraj

Sad ću još jednom izvršiti kod po retka pritiskom na tipku F8.

Kaže 1 kao i obično.

Sada ću prijeći na sljedeću razinu.

Čak i u drugom pokušaju kaže 1.

Razlog tome je što smo koristili naredbu Zatvori datoteku, FreeFile prepoznaje novootvorenu datoteku kao svježu i cijeli broj vraća kao 1.

Zanimljivi članci...