Sub sample()
'変換表はこのブックの1シート目に用意されているものとする
Dim mySheet As Worksheet, rng As Range
Set mySheet = ThisWorkbook.Worksheets(1)
Set rng = mySheet.UsedRange.Columns(1)
'txtファイルはこのマクロと同じ場所にあるものとする
Dim fileName As String
fileName = Dir(ThisWorkbook.Path & "*.txt")
'ループ
Do While fileName <> ""
'読み込み(ファイルはすべてUTF-8であるものとする)
Dim buf, arr
buf = ADOFileLoad(ThisWorkbook.Path & "" & fileName)
'変換表に従い置換
Dim c As Range
For Each c In rng.Cells
buf = Replace(buf,"A"& c.Value &"B", "A"&c.Offset(, 1).Value &"B")
DoEvents
Next
'別名でtxt書き出し
ADOFileSave buf, ThisWorkbook.Path & "\New_" & fileName
'シートにも書き出し
Dim ws As Worksheet
Set ws = ThisWorkbook.Worksheets.Add(After:=mySheet)
arr = Split(buf, vbNewLine)
ws.Cells.Resize(UBound(arr) + 1, 1).Value = WorksheetFunction.Transpose(arr)
'次へ
fileName = Dir()
Loop
でreplaceの部分で正規表現を使うにはどうしたらいいでしょうかex
回答1件
あなたの回答
tips
プレビュー