| ページ一覧 | ブログ | twitter |  書式 | 書式(表) |

MyMemoWiki

「FileSystemObject ファイルの編集出力」の版間の差分

提供: MyMemoWiki
ナビゲーションに移動 検索に移動
(ページの作成:「==FileSystemObject ファイルの編集出力== ===ファイルを読み込み、書式編集して出力する=== *FileSystemObject http://msdn.microsoft.com/ja-jp/li…」)
 
5行目: 5行目:
 
   
 
   
 
  Sub ColumnFormat()
 
  Sub ColumnFormat()
   IF WScript.Arguments.Count < 1 THEN
+
   IF WScript.Arguments.Count &lt; 1 THEN
 
       Call WScript.Echo("対象ファイルをドロップしてください")
 
       Call WScript.Echo("対象ファイルをドロップしてください")
 
       Exit Sub
 
       Exit Sub

2020年2月15日 (土) 08:02時点における版

FileSystemObject ファイルの編集出力

ファイルを読み込み、書式編集して出力する

Sub ColumnFormat()
 IF WScript.Arguments.Count < 1 THEN
     Call WScript.Echo("対象ファイルをドロップしてください")
     Exit Sub
 END IF

 Set fso = CreateObject("Scripting.FileSystemObject")

 srcFile = WScript.Arguments(0)
 IF Not fso.FileExists(srcFile) Then
     Call WScript.Echo("対象ファイルが存在しません。")
     Exit Sub
 End If
 dstFile = srcFile & ".formatted.txt"
 
 Set inf  = fso.OpenTextFile(srcFile, 1)        '1:ForReading
 Set outf = fso.OpenTextFile(dstFile, 2, True)  '2:ForWriting

 output_count = 0
 Do While Not inf.AtEndOfLine
     line = inf.ReadLine()

     'TABで区切られているデータを分割
     cols = Split(line, vbTab) 

     '桁数をそろえる
     cols(0) = Left(cols(0) & Space(10) ,10) 
     cols(1) = Left(cols(1) & Space(5)  , 5) 
     cols(2) = Left(cols(1) & Space(4)  , 4) 

     '出力
     outf.WriteLine(cols(0) & cols(1) & cols(2))
     output_count = output_count + 1
 Loop

 Call WScript.Echo(output_count & "件処理しました。")
End Sub

Call ColumnFormat()