• 締切済み

csv形式のテキストファイルをexcelでCSV化するマクロについて

今、ひとつのフォルダに大量にCSV形式で保存されているテキストファイルを excelのマクロを使って、ひとつのexcelにCSV形式(.xls)で保存するものを作成している のですが、今までマクロを使ったことがないため、まったく歯が立ちません。 もう少し詳しく書くと、テキストファイルの中身は、 01,54521,18:01:02,110230 というようになってます。 これを、excelのマクロを使い、カンマ区切りで取り込むような感じです。 すみませんが、回答お願いいたします。

みんなの回答

  • Cupper
  • ベストアンサー率32% (2123/6444)
回答No.1

んと・・・かなり無駄なことをやっているように思えるんですけど、自分の読み違いでしょうか >excelにCSV形式(.xls)で保存するものを作成している いいえ、ExcelでCSV形式で保存すると拡張子は ".csv" となります 元のファイルと変わることはありません むしろ、質問の例では、時間として入力されている部分がシリアル値に変わってしまう可能性があります  01,54521,18:01:02,110230  ↓  01,54521,0.750717592592592,110230 注意してください マクロを作ったことが無いのであれば、とりあえず記録マクロで操作手順をマクロ化することから始めましょう あとは豊富にある解説本の中から自身にあった書籍を探してバイブルとするくらいでしょうか 個人的にはコマンドプロンプトからcopyコマンドを使って結合させた方が早いような気がするので、こっちでやってしまうでしょう CSV形式のファイルはテキストなので copyコマンドで簡単に結合させることができます  copy text1.csv+text2.csv+text3.csv text_all.csv など

shine_000
質問者

補足

回答ありがとうございます。 少し自分の説明が悪かったみたいですので、補足いたします。 まず、フォルダに.txt形式で中身がカンマ区切りのファイルが大量にあります。 それを、ひとつのexcelシートに保存するようなマクロを組みたいです。 その際、excelの中身はexcel上で、 開く→.txt形式で中身がカンマ区切りのファイル→カンマ区切りで編集 と、した手順で作成したexcelと同じになっているイメージです。 中身の書式はすべて文字列にするので、シリアル値に変わることはないと 思っております。

関連するQ&A

  • エクセルでファイルをcsv形式で保存するマクロについて

    同様の質問が以前にあったのですが、 どうやら私のは少し違うようなので新規質問として投稿させていただきます。 エクセルファイルを保存する際、保存形式を「テキスト(タブ区切り)(*.txt)」にして、 ファイル名の拡張子の部分だけ(.csv)にして保存するマクロを作成したいです。 しかし、エクセルに付いているオートマクロ機能で記録しようとすると、 ・ファイル名がオートマクロを作成した際に付けたファイル名になってしまう。 ・保存場所がオートマクロを作成した際に保存したフォルダになってしまう。 という問題が発生します。 なので、 ・保存する際のファイル名は現在作業しているファイルの名前をそのまま使用する。 ・保存する際のファイル名の拡張子部分は(.csv)に変更する ・保存場所は現在作業しているファイルがあるフォルダにする(もしくはプログラムで予めパスを指定できる)。 ・保存形式は「テキスト(タブ区切り)(.txt)」 の4つの条件を満たすマクロの作成方法をお教えいただけますでしょうか? すみませんが、よろしくおねがいします

  • ExcelファイルをCSV 形式で保存するには?

    ExcelファイルをCSV 形式 (Windows、カンマ区切り) (*.csv)にして書類を提出するように言われたのですが、その方法について教えてください。 データの内容は会社の詳細で、1社につき100項目のデータがあり、それが50社あります。その場合、1社目のデータをA列に、2社目のデータをB列にというように入力すればよいのでしょうか? Excel の [名前を付けて保存] ([ファイル] メニュー) を使って、CSV (カンマ区切り) (*.csv)ファイルで保存すると、各項目がカンマで区切られるのでしょうか? 1レコード目と2レコード目はどういった区切りになるのでしょうか? またファイル形式はCSV 形式でと言うことですが、提出するファイル名の拡張子を.txtとしないといけないのですが、それはどうすればいいのでしょうか?

  • ExcelでのCSVファイルの編集について、

    ExcelでのCSVファイルの編集について、 オートフィルタ機能を使いたいため、 ExcelでCSVファイルの編集しようとしているのですが、ちょっと苦戦しています。。。 私が試してみたこと 1.もとのCSVファイルの拡張子を○○.csv → ○○.txtに変更。   ↓ 2.Excelの「開く」からその○○.txtを読み込む。   ↓ 3.テキストファイルウィザードに従い、   1「カンマやタブなどの区切り文字によって~ 」にチェック   2「区切り文字」→ カンマ、「文字列の引用符」 → "   3「列のデータ形式」 → 文字列 ※090などの数字を、90と先頭の0を消されないように 上記のような手順でCSVファイルを取り込み、編集を終え、 保存する時は   「○○.txtにはテキスト(タブ区切り)と互換性のない機能が含まれている可能性があります。    この形式でブックを保存しますか?」 → このまま保存するため「はい」を選択 これでバッチリOK!…かと思われたのですが、 元の編集前の○○.txt は"名前","ヨミ","電話番号1", …… ""とカンマ区切りであったのが、 編集後の○○.txtは名前 ヨミ 電話番号1  …… タブ区切り(?) となってしまっています。 (CSVファイルとしてはタブ区切りでも問題ないのでしょうが…) どうすれば元のカンマ区切りの形式のまま保存できますでしょうか。 アドバイスよろしくお願い致します。

  • エクセルをCSV形式で保存したらファイルが開かないのですが・・・

    いつもお世話様になっております。 どうぞよろしくお願い致します。 エクセルファイルをCSV形式で保存しようとすると 「CSV(カンマ区切り)と互換性のない機能が含まれている可能性があります・・・」というダイアログが出ます。 それに対し、はいで答えてファイルを閉じた後、できあがったCSVファイルを開こうとすると 「SYLK:ファイル形式が正しくありません」というメッセージが出てしまって 開けないのですが、どのような理由が考えられますでしょうか?

  • ExcelのCSV形式で保存する必要性について

    テキストデータをExcelでカンマ区切りで開いてExcelのCSV形式で保存すると、見た目はエクセルとなんらかわらず、集計等できるものの、書式等が保持されない状態で保存されるものと理解しています。 それであれば、なにもCSVでなくExcelブック形式で保存した方が良いように思いますが、敢えてExcelのCSV形式で保存する理由、あるいは必要性について教えてください。

  • テキストファイルからCSVに変更

    テキストファイルをCSVに変更したいのですが・・・ 同じカンマ区切りですけど、何が違うのでしょうか。 あと、テキストをエクセルで開いてCSVに保存するという方法で間違いないでしょうか。 数字で0が先頭の場合、エクセル上では表示されません。でもメモ帳とかで開いてみると0は入っているので問題ないのでしょうか。 すみません、どなたかお教えくださいませんでしょうか。 よろしくお願いします。

  • EXCEL VBAでのCSVファイルの編集

    CSVファイル(ダブルクォーテーション)形式のファイルをEXCEL VBAにて行の編集(削除)をした後、上書き保存をしたらダブルクォーテーション区切りではなくカンマ区切りのCSVファイルの形式になってしまいます。 ダブルクォーテーション区切りのCSVファイルで上書き保存する記述があれば教えて下さい。おそらくEXCELでCSV形式の上書きはCSV2の形式で保存されるみたいです。 困っています。どなたかお助け下さい。

  • 大量のCSVファイルをExcel形式に変換する

    お世話になります。 大量のCSV(.csvファイルをExcel(.xls)ファイルに変換したい と考えております。 リネームソフトを使って、(.csv)⇒(.xls)の一括変換を したところ、拡張子は確かに.xlsに変換されたのですが、 中身はCSVのままとなっておりました。 (↑ファイル名とシート名が同期を取っているので) このCSVを確実にエクセル形式へと変換したいのですが、 どなた様かいいお考えをお持ちでしたら教えてください。 ググってみたところ、そういったアドインがあるのですが、 できれば費用をかけずに行いたいです…。

  • ExcelのCSV形式について

    ExcelデータをCSV形式で保存するとき文字列はダブルコーテーション、数字列はそのままでカンマ区切りしたいです。確か123のCSV形式はそうなってたと思います。お手数ですが御回答、宜しくお願い致します。

  • EXCEL- VBA(CSVファイル→インポート)

    A列~F列になる複数(100個以上)のCSVファイルをエクセルファイルにインポートして更に個別にエクセルファイルとして保存したいのですが VBAでできるのでしょうか? 記憶マクロでやったらどうにもうまくいきません。 エクセルのVBAについては ほとんど知識ゼロなので困っております。 大変厚かましくありますが どなた様かご教授お願いできたらと思います!! 【元のファイルの状態】   ◆ファイル名「*.CSV」*は文字数それぞれ違います。   <例:tanaka.xls だったり 09福島.xls>  ◆入っているドライブ   TEXT;C:\Documents and Settings\AA_B\デスクトップ\練習  ◆A~F列にデータが入っている 【やりたいこと】    (1)A~F列はカンマ区切りで全て文字列としたい  (2)元のファイル名でエクセルとして保存したい「*.XLS」

専門家に質問してみよう