Excel VBA質問箱 IV

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

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


28066 / 76732 ←次へ | 前へ→

【53974】固定長100バイトで改行
質問  まんじゅう  - 08/2/19(火) 13:50 -

引用なし
パスワード
   エクセルのマクロでコマンドボタンを押すと
マクロを作成したフォルダのtest.txt(固定長、改行なし)
をよみこみ、100バイトずつで改行し、それをout.txtで出力する
VBAを作成しました。その時に読み込むファイルのtest.txtに半角スペースが
入っていた場合、out.txtに出力する方法はありますでしょうか。
現在のモジュールだと、100バイトで区切った場合、半角スペースが
表示されず、最終文字のすぐ後に改行がつきます。

作成したモジュールを添付します。

test.txt内容
11111111111111...1111□□□□2222222222.....222222222333.....333□


out.txt内容
現在)
11111....1改行
22222....2222改行
33333....333改行


改善)
11111....□□□□改行
22222....2222改行
33333....333□改行

-------------------------------------------------------------------------
Sub CommandButton1_Click()

  Dim nYLINE   As Integer
  Dim IN_FNO%, OUT_FNO%
  Dim Position  As Long
  Dim strREADBUF As TYPERecord

  IN_FNO = FreeFile '空いているファイル番号を取る
  
  ' test.txt ファイルを ランダム アクセス モードで開きます。
  Open ActiveWorkbook.Path & "\test.txt" For Random Access Read As #IN_FNO Len = 100
  
  '出力先 out.txt を シーケンシャル ライト モードで開きます
  OUT_FNO = FreeFile
  Open ActiveWorkbook.Path & "\out.txt" For Output As #OUT_FNO
  
  '変数初期化
  n = 1           ' レコード番号を定義します。
  nYLINE = 2 '見出しを抜かして、2行目から処理
  
  While EOF(IN_FNO) = False
    ' Get ステートメントを使って、サンプル ファイルを読み込みます。
    Get #IN_FNO, n, strREADBUF  ' n番目のレコードを読み込みます。
    '読み込まれたデータを書き込むCSVにする、、、
    'カンマだけ付ける””は好みで?

    Print #OUT_FNO, Trim(strREADBUF.漢字氏名)
    'カウントアップ
    n = n + 1
    nYLINE = nYLINE + 1
  Wend

  Close #IN_FNO             ' ファイルを閉じます。
  Close #OUT_FNO

  '結果をメモ帳表示
  Shell "notepad.exe " & ActiveWorkbook.Path & "\out.txt", vbNormalFocus
  
End Sub

-------------------------------------------------------------------------

(module1)
Type TYPERecord       'ユーザー定義型を定義します。

  漢字氏名  As String * 1 '
  
End Type
-------------------------------------------------------------------------

0 hits

【53974】固定長100バイトで改行 まんじゅう 08/2/19(火) 13:50 質問
【53975】Re:固定長100バイトで改行 VBWASURETA 08/2/19(火) 14:07 回答
【53976】Re:固定長100バイトで改行 まんじゅう 08/2/19(火) 14:26 発言
【53984】Re:固定長100バイトで改行 VBWASURETA 08/2/19(火) 16:12 発言
【53990】Re:固定長100バイトで改行 まんじゅう 08/2/19(火) 17:02 お礼

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