LOF は 0 を返します。
ここにファイルがあります
ここにサンプル関数があります
Public Function GetNumberOfLinesInFile(ByVal FileFullQualifiedName As String) As Double
Dim f As Integer
Dim FileBytes As Double
Dim LineCount As Double
f = FreeFile(0)
Open FileFullQualifiedName For Binary Access Read As #f
FileBytes = LOF(f)
'//CODE MISSING
Close #f
GetNumberOfLinesInFile = LineCount
End Function
編集
では動作しないBinary Access
ようですが、次のようにファイルを開くと正常に動作しています
Open FileFullQualifiedName For Input Access Read As #f
編集2
上記のサンプル関数では、としてLOF
宣言することで機能しましたが、どこでも機能しているわけではありません。たとえば、次の行では、との両方が返されています。FileBytes
Long
LOC
LOF
0
Do Until Loc(FF) >= LOF(FF)
編集 3
どういうわけか、ファイルパスが変更されたためOpen FileFullQualifiedName For Binary Access Read As #f
、新しいファイルが作成され、明らかに、この空のファイルLOF
に戻っていました0