こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

VBAでtextファイルを作成

マクロ・VBA初心者です。

ご教授お願いします!!


経費精算のExcelデータを画像のような「"",]で区切ったテキストファイルを作成するマクロを作りたいと考えてます。

完成イメージ:マクロのボタンを押すとテキストファイルの形でフォルダに作成される。もしくは、マクロボタンを押すとテキストファイルの形で区切ったものが表示されるものを作りたいです。


*経費精算データに関してA列からX列まであり、集計データにより列にデータを埋めていく作業が入っております。なので、A列からX1列まででデータが記入されている範囲で集計できるようにしたいと考えております。

現在は、勉強しつつ組み立てた結果、
CSVのExcelファイルをフォルダの中に作成できるようになりました。
(コードは下記に記載します)
ただ、テキストファイルが作れるコードができていないのが問題です。

このコードをどのように変えればよいのか?
もしくは、別のコードで出来るようならば教えていただけると嬉しく思います。

宜しくお願いします。

______________________________
〈コード〉


Option Explicit
Sub ExcelファイルCSV形式作成()
'変数宣言
Dim filePath As String
Dim i As Long
Dim maxRow As Long
Dim fileNo As Integer

'初期値設定
filePath = ActiveWorkbook.Path & "\経費計算エクセル(CSV保存).csv"
maxRow = Range("A1").End(xlDown).Row '最終行取得
fileNo = FreeFile 'FreeFile関数で使用可能なファイル番号取得

'ファイル開く
Open filePath For Output As #fileNo

'最終行までループ
For i = 1 To maxRow
'列の数は決め打ち
Write #fileNo, Cells(i, 1), Cells(i, 2), Cells(i, 3), Cells(i, 4), Cells(i, 5), Cells(i, 6); Cells(i, 7), Cells(i, 8), Cells(i, 9); Cells(i, 10), Cells(i, 11), Cells(i, 12); Cells(i, 13), Cells(i, 14), Cells(i, 15); Cells(i, 16), Cells(i, 17), Cells(i, 18); Cells(i, 19), Cells(i, 20), Cells(i, 21); Cells(i, 22), Cells(i, 23), Cells(i, 24)

Next i

'ファイル閉じる
Close #fileNo
End Sub

______________________________________



以上です。

本当に困ってます。よろしくお願します。

投稿日時 - 2016-05-21 13:26:13

QNo.9175760

すぐに回答ほしいです

質問者が選んだベストアンサー

ファイルの拡張子が.csvで作成されるが、.txtで作成したいって話でいいんでしょうか?

| '初期値設定
| filePath = ActiveWorkbook.Path & "\経費計算エクセル(CSV保存).csv"



filePath = ActiveWorkbook.Path & "\経費計算エクセル.txt"

だけでOKだと思いますが。

投稿日時 - 2016-05-21 13:31:22

お礼

解決しました。本当にありがとうございますm(__)m

投稿日時 - 2016-05-21 22:51:26

このQ&Aは役に立ちましたか?

1人が「このQ&Aが役に立った」と投票しています

回答(2)

ANo.2

#1のお礼で、>解決しました。本当にありがとうございますm(__)m
といっているが、
(1)テキストファイル
(2)CSVファイル
というものが十分判っていないのではないか。
(1)もCSV形式だけでなく、PRN形式とか
(2)も2-3種類ある。
現状の理解は一面的なような気がする。WEBでも照会して勉強したらどうですか。
ウイキペディア「テキストファイル」だけでも読んでおくことを勧める。
ーー
第1列から第24列までCells(i, 1)などを直接列挙して書いているのは、個人的にはスマートでないと思うが。
Write#コマンドはむつかしいが便利なものだが、使い方に注意。

投稿日時 - 2016-05-22 21:21:31

お礼

ご丁寧にありがとうございます。

投稿日時 - 2016-05-29 21:50:54

あなたにオススメの質問