ファイル行数カウント
' CountDataFileLine
' 指定ファイルの行数をカウントする
' フラグにより、ファイルの構成に対応したカウントが可能
' ※純粋なレコード数0の場合はフラグ情報を考慮しない
' 引数:あり
' iFilePath : カウントする指定ファイル(フルパス)
' hasHeaderLine : ヘッダー行の有無(「TRUE:ヘッダー行あり」の場合1減らす)
' hasLastBlankLine : カウント不要な最終行の有無(「TRUE:カウント不要行あり」の場合1減らす)
' 戻り値:String:ファイルの行数
Public Function CountFileLine(ByVal iFilePath As String, ByVal hasHeaderLine As Boolean, ByVal hasLastBlankLine As Boolean) As Long
Dim fsObj As Object
Dim fsObjTS As Object
Dim LineNumber As Long
Set fsObj = CreateObject("Scripting.FileSystemObject")
' ファイルの末尾から書き込みモードで開きます
' ※実際には書き込みません
Set fsObjTS = fsObj.OpenTextFile(iFilePath, 8)
' 現在のファイル ポインタの位置を行番号で取得します
LineNumber = CLng(fsObjTS.Line)
' ファイルを閉じる
fsObjTS.Close
' 使用済みオブジェクトの除去
Set fsObj = Nothing
If LineNumber > 0 Then
If hasHeaderLine Then
LineNumber = LineNumber - 1
End If
If hasLastBlankLine Then
LineNumber = LineNumber - 1
End If
End If
CountFileLine = LineNumber
End Function
Public Sub test_CountFileLine()
MsgBox CountFileLine("C:\aaa.txt", False, False)
End Sub
最終更新:2013年05月08日 23:47