Excel VBA質問箱 IV

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

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


28031 / 76732 ←次へ | 前へ→

【54012】Re:指定のファイルをインポートしてグループ別のファイルを出力するVBA
回答  りん E-MAIL  - 08/2/20(水) 6:20 -

引用なし
パスワード
   まんじゅう さん、おはようございます。

>EXCELにて、指定のファイルをインポートして
>グループ別のファイル(100バイトで改行)を出力するVBAの作成をしています。
>先頭行の1から8までが1グループでグループごとのファイルを出力したいです。
>先頭行9は最終

テキストファイルのようですので、LINE INPUTで取りこみました。
Sub test()
  Dim s1 As String, flg As Boolean, NN As Long, LL As Long
  flg = False
  '
  Open "C:\D\InputData.TXT" For Input As #1
   Do Until EOF(1)
     Line Input #1, s1
     'ファイルを開いていなければFile Open
     If flg = False Then GoSub OutOp
     Print #2, s1
     '8を書きこんだらFile Close
     If Left(s1, 1) = "8" Then GoSub OutCl
   Loop
  Close #1
  If flg = True Then GoSub OutCl
  'メイン終了
Exit Sub
'書き出すファイルを開くサブルーチンです
OutOp:
  NN = NN + 1
  Open "C:\D\out" & Format(NN, "000") & ".txt" For Output As #2
  flg = True
Return
'書き出すファイル閉じるサブルーチンです
OutCl:
  Close #2
  flg = False
Return
End Sub

こんな感じです。
ただし、改行コードがCR+LFでないもの(テレメーターやMAC由来のテキストファイル)では失敗します。FSOのReadLineメソッドを使用する方が安全かもしれません。
0 hits

【54011】指定のファイルをインポートしてグループ別のファイルを出力するVBA まんじゅう 08/2/20(水) 2:10 質問
【54012】Re:指定のファイルをインポートしてグルー... りん 08/2/20(水) 6:20 回答
【54027】Re:指定のファイルをインポートしてグルー... まんじゅう 08/2/20(水) 15:19 質問
【54033】Re:指定のファイルをインポートしてグルー... りん 08/2/20(水) 19:07 回答
【54040】Re:指定のファイルをインポートしてグルー... まんじゅう 08/2/21(木) 10:18 質問
【54051】Re:指定のファイルをインポートしてグルー... りん 08/2/21(木) 18:46 回答
【54057】Re:指定のファイルをインポートしてグルー... まんじゅう 08/2/22(金) 10:50 お礼
【54135】Re:指定のファイルをインポートしてグルー... まんじゅう 08/2/26(火) 2:50 質問
【54231】Re:指定のファイルをインポートしてグルー... りん 08/3/1(土) 12:33 回答

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