Excel VBA質問箱 IV

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

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


76357 / 76732 ←次へ | 前へ→

【4797】Re:テキストファイルへのパッチについて
回答  ポンタ  - 03/4/8(火) 9:31 -

引用なし
パスワード
   私はテキストファイルを扱うときはVBスクリプトの
TextStreamストリームオブジェクトを利用してしまうので

http://www7.ocn.ne.jp/~tllsp/tips_fileio.htm#固定長ファイルへのパッチ

とはぜんぜん違うやり方になってしまうのですが、
以下ようなコードで動くと思います。

  FileName = "C:\My Documents\Test.Txt"

を正しいファイル名に、

  Range("A1", Range("A65536").End(xlUp)).Offset(0, 1).FormulaR1C1 = _
    "=""hogehoge""&MID(R[0]C[-1],9,LEN(R[0]C[-1])-8)"

の""hogehoge""を置き換えたい文字に置き換えてお試しください。

※実行前にバックアップを取って置いてください。

Sub test()
  Dim objText As Object
  Dim FileName As String
  Dim i As Long
  FileName = "C:\My Documents\Test.Txt"
  Set objText = CreateObject("Scripting.FileSystemObject").OpenTextFile(FileName, 1)
  i = 1
  Do
    Cells(i, 1).Value = objText.ReadLine
    i = i + 1
  Loop Until objText.AtEndOfStream
  objText.Close
  Range("A1", Range("A65536").End(xlUp)).Offset(0, 1).FormulaR1C1 = _
    "=""hogehoge""&MID(R[0]C[-1],9,LEN(R[0]C[-1])-8)"
  Set objText = CreateObject("Scripting.FileSystemObject").OpenTextFile(FileName, 2)
  For i = 1 To Range("B65536").End(xlUp).Row
    objText.WriteLine (Cells(i, 2).Value)
  Next
  objText.Close
End Sub

0 hits

【4782】テキストファイルへのパッチについて あつし 03/4/7(月) 13:12 質問
【4796】Re:テキストファイルへのパッチについて こうちゃん 03/4/8(火) 9:12 発言
【4805】Re:テキストファイルへのパッチについて あつし 03/4/8(火) 13:15 お礼
【4797】Re:テキストファイルへのパッチについて ポンタ 03/4/8(火) 9:31 回答
【4820】Re:テキストファイルへのパッチについて あつし 03/4/9(水) 0:23 質問
【4822】Re:テキストファイルへのパッチについて ポンタ 03/4/9(水) 8:26 回答
【4863】Re:テキストファイルへのパッチについて あつし 03/4/11(金) 0:53 お礼
【4814】Re:テキストファイルへのパッチについて Hirofumi 03/4/8(火) 20:44 回答
【4821】Re:テキストファイルへのパッチについて あつし 03/4/9(水) 0:26 発言
【4864】Re:テキストファイルへのパッチについて あつし 03/4/11(金) 1:03 お礼

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