Uwaga
Funkcja, metoda, obiekt lub właściwość opisane w tym temacie są wyłączone, jeśli usługa wyrażeń Microsoft Jet działa w trybie piaskownicy, co uniemożliwia ocenę potencjalnie niebezpiecznych wyrażeń. Aby uzyskać więcej informacji o trybie piaskownicy, wyszukaj termin "tryb piaskownicy" w Pomocy.
Zwraca liczbę całkowitą zawierającą wartość logiczną True , gdy został osiągnięty koniec pliku otwartego dla losowych lub sekwencyjnych danych wejściowych .
Składnia
EOF(numer_pliku)
Wymaganym argumentem numeru plikujest liczba całkowita zawierająca dowolny prawidłowy numer pliku.
Uwagi
Użyj funkcji EOF , aby uniknąć błędu generowanego przez próbę wprowadzenia danych wejściowych poza koniec pliku.
Funkcja EOF zwraca wartość False do momentu osiągnięcia końca pliku. W przypadku plików otwieranych w celu uzyskania dostępu losowego lub binarnegofunkcja EOF zwraca wartość False , dopóki ostatnia wykonana instrukcja Get nie będzie w stanie odczytać całego rekordu.
W przypadku plików otwartych w celu uzyskania dostępu binarnego próba odczytania pliku przy użyciu funkcji Input do momentu, aż funkcja EOF zwróci wartość True , spowoduje wygenerowanie błędu. Użyj funkcji LOF i Loc zamiast funkcji EOF podczas odczytywania plików binarnych za pomocą danych wejściowych lub funkcji Get podczas korzystania z funkcji EOF . W przypadku plików otwieranych dla danych wyjściowychfunkcja EOF zawsze zwraca wartość True.
Przykład
Uwaga
Poniższe przykłady przedstawiają sposób użycia tej funkcji w module języka Visual Basic for Applications (VBA). Aby uzyskać dodatkowe informacje na temat pracy w języku VBA, wybierz pozycję Dokumentacja dewelopera z listy rozwijanej obok przycisku Wyszukaj i wprowadź odpowiednie terminy w polu wyszukiwania.
W tym przykładzie użyto funkcji EOF do wykrycia końca pliku. W tym przykładzie założono, że MYFILE jest to plik tekstowy z kilkoma wierszami tekstu.
Dim InputData
' Open file for input.
Open "MYFILE" For Input As #1
' Check for end of file.
Do While Not EOF(1)
' Read line of data.
Line Input #1, InputData
' Print to the Immediate window.
Debug.Print InputData
Loop
' Close file.
Close #1