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为这个空文件返回