• 締切済み

エクセルVBA ファイル名を変えながらtxtファイルに出力する方法

エクセルVBA初心者です 名前/科目 国語 数学 英語 合計 A 53 45 12 110 B 58 59 74 191 C 80 69 58 207 D 45 97 66 208 E 35 85 53 173 F 89 13 79 181 このシート内容を一行ずつテキストファイルに出力したいと考えております。 ファイル名を 生徒A.txt のように生徒・セルの値にしたい場合はどのようにすればよいでしょうか? 分かる範囲で書いたものを載せました アドバイスよろしくお願いします。 Sub test1() Dim ken As Long Dim i As Integer Dim j As Integer Dim fn As Integer fn = FreeFile() ken = Range("a65536").End(xlUp).Row For i = 2 To ken Open "C:\■■■.txt" For Output As #fn For j = 1 To 5 Write #fn, Cells(i, j); Tab; Next j Print #fn, "" Close #fn Next i End Sub

みんなの回答

  • n-jun
  • ベストアンサー率33% (959/2873)
回答No.3

>実行時エラー76 >ファイルパスが見つかりません >と表示されます 生徒名がどのようになっているのか不明ですが、こちらでは生徒A.txt~ と出来ています。 普通に考えるとCドライブがないとしか言えないんですが。。。

chikuson
質問者

お礼

すいません 無事ファイルできました。 本当にありがとうございました

  • n-jun
  • ベストアンサー率33% (959/2873)
回答No.2

>Open "C:\" & Range("A" & i).Value & ".txt" For Output As #fn Open "C:\生徒" & Range("A" & i).Value & ".txt" For Output As #fn こっちかな?

chikuson
質問者

補足

回答ありがとうございます。 Open "C:\生徒" & Range("A" & i).Value & ".txt" For Output As #fn を貼り付けて実行したところ 実行時エラー76 ファイルパスが見つかりません と表示されます これはどのように解消すればよろしいでしょうか? よろしくお願いいたします。

  • n-jun
  • ベストアンサー率33% (959/2873)
回答No.1

>ファイル名を 生徒A.txt のように生徒・セルの値にしたい場合は >どのようにすればよいでしょうか? Open "C:\" & Range("A" & i).Value & ".txt" For Output As #fn こうゆう事でしょうか?

関連するQ&A