Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


2223 / 13646 ツリー ←次へ | 前へ→

【69287】テキストファイルの行数取得 たかし 11/6/20(月) 14:59 質問[未読]
【69288】Re:テキストファイルの行数取得 UO3 11/6/20(月) 15:36 発言[未読]
【69289】Re:テキストファイルの行数取得 たかし 11/6/20(月) 16:26 お礼[未読]
【69292】Re:テキストファイルの行数取得 Jaka 11/6/21(火) 12:43 発言[未読]
【69291】Re:テキストファイルの行数取得 kanabun 11/6/20(月) 20:28 発言[未読]

【69287】テキストファイルの行数取得
質問  たかし  - 11/6/20(月) 14:59 -

引用なし
パスワード
   いつもお世話になっています。
下記のような、テキストファイルを読み込むマクロを作成しています。
ただ、テキストファイルの行数が1000行以上、時には10000行になる為
プログレスバーにて処理経過を確認するようにしたいのですが、テキスト
ファイルの総行数の取得がうまくできません。
総行数は取得できますか?
どなたか、アドバイスをお願い致します。

Sub AAA()
  Const ForReading = 1, ForWriting = 2, ForAppending = 8
  fp = Application.GetOpenFilename(MultiSelect:=True, _
      Title:=" SEQLOGファイルを選択して下さい(CtrlやShiftキーを使って複数選択可)")
    If Not IsArray(fp) Then
      MsgBox ("処理を中止します")
      Exit Sub
    End If
  Set fso = CreateObject("Scripting.FileSystemObject")
  For i = 1 To UBound(fp)
    Set fnow = fso.OpenTextFile(fp(i), ForReading)
    Do While fnow.AtEndOfStream <> True
      temp = fnow.readline
      If temp Like "*BBB*" Then
        DAT = Split(temp, " ")
        Sheets(1).range("A1")=DAT(2)
      End if
    Loop
    fnow.Close
    Set fnow = Nothing
    Call Display_MyProgressBar(i, UBound(fp))
    DoEvents
  Next i

【69288】Re:テキストファイルの行数取得
発言  UO3  - 11/6/20(月) 15:36 -

引用なし
パスワード
   ▼たかし さん:

officetanaka.net/excel/vba/tips/tips121.htm

↑のページに総行数を把握するコードが書かれています。

【69289】Re:テキストファイルの行数取得
お礼  たかし  - 11/6/20(月) 16:26 -

引用なし
パスワード
   UO3 さん
ありがとうございます。
早速確認してみます。

【69291】Re:テキストファイルの行数取得
発言  kanabun  - 11/6/20(月) 20:28 -

引用なし
パスワード
   よこからすみません。

FSOでテキストファイルの総行数を取得するなら、
おなじくOfficeTANAKAさんのサイトのここが参考に
なります。
officetanaka.net/excel/vba/filesystemobject/sample09.htm

ただし、
そこのサンプルの
>  With FSO.OpenTextFile(TargetFile, 8)
>    MsgBox Dir(TargetFile) & "は、" _
>     & .Line & "行あります。", vbInformation
>    .Close
>  End With
は、

   & .Line - 1 & "行あります。", vbInformation

でなければなりません。
理由は分かりますよね?

【69292】Re:テキストファイルの行数取得
発言  Jaka  - 11/6/21(火) 12:43 -

引用なし
パスワード
   おまけ。

ht tp://www.vbalab.net/vbaqa/c-board.cgi?cmd=one;no=79;id=FAQ

2223 / 13646 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free