CSVファイルを読んでシートに書き込む方法

このQ&Aのポイント
  • エクセルのマクロ(VB6.5)でCSVファイルをよんでシートに書き込む方法を教えてください。
  • CSVファイルのデータを上から順番にシートに書き込む方法を教えてください。
  • カンマ区切りのCSVファイルを読み込んで指定したセルにデータを書き込む方法を教えてください。
回答を見る
  • ベストアンサー

CSVファイルを読んでシートに書き込む方法

エクセルのマクロ(VB6.5)でCSVファイルをよんでシートに書き込みたいのですが誰か教えて下さい。 例えば CSVファイルはこんな感じだとします。 ファイルID:test.csv ファイル内容  (1レコード)123,123,123,123,123,123  (2レコード)456,456,456,456,456  (3レコード)789,789,789,789 書き込むシートは「abcシート」とします。 CSVファイルはカンマ区切りですがレコード毎にカンマ区切りのデータ数が違います。 シートには指定したセルに書き込めば一番いいのですが、上から順番に書き込んでもいいです。 申し訳ありませんが、宜しくお願い致します。

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

  • ベストアンサー
  • ShowMeHow
  • ベストアンサー率28% (1424/5027)
回答No.1

たとえば、こんなかんじかな。 ファイルを読む http://www.asahi-net.or.jp/~ef2o-inue/vba_o/sub05_110.html なんかいいサンプルが見つからないけど、こんなところかな。 split 関数 http://jeanne.wankuma.com/tips/vb6/string/split.html エクセルを操作する http://www.red.oit-net.jp/tatsuya/vb/Excel.htm

GONBEBW
質問者

お礼

回答ありがとうございます。 ある程度はわかるので、提示したサンプルで十分です。 うまくいきました。

その他の回答 (1)

  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.2

初めから自分でやる気が無いのでは。 WEBには沢山の情報があふれている。 (1)CSVフィルのオープン (2)CSVファイルを1レコードを(1行)ずつ読むコードは Line Input# (3)その1行の文字列を対象にSplit関数を用い、カンマで分離する。 (4)列に関して、A列からUbound(s)までの列に Cells(i,j+1)=s(j) で値をセットする。 http://www.cocoaliz.com/excelVBA/index/30/に近い方法。 参考 http://officetanaka.net/excel/vba/tips/tips62.htm ーー Input#ステートメントでやる例も在る。 http://www.asahi-net.or.jp/~ef2o-inue/vba_o/sub05_110_020.html ーー OpenTextメソッド も在る http://www.asahi-net.or.jp/~zn3y-ngi/YNxv914.html

GONBEBW
質問者

お礼

回答ありがとうございます。 たくさんのサンプル集は大変助かります。

関連するQ&A

  • CSVファイル操作

    VBでCSVを操作しているのですが、わからないことがあるので教えてください。 1.CSVファイル(改行区切り)のレコード数を取得するにはどうすればいいですか? 2.CSVファイル(改行区切り)の最初のレコードのみ削除するにはどうすればいいですか?   また、レコードを指定して削除することはできますか? 3.CSVファイル(改行区切り)のレコードを指定して内容を変更することはできますか? Windows XP , VB6

  • Excel ワークシート から csvファイルに変換するには?

    エクセルに記入された内容は各マスで区切られておりますが マスではなく「,」で区切られる csvに変換したいのですが これは可能でしょうか? 既に入力済みのエクセルシートから ファイル→名前を付けて保存→ファイルの種類→csv→保存 というようにしてエクセルからcsvに変換しようとしましたが 「選択したファイルの種類は複数のシートを含むブックをサポートしていません」 というエラーが出て、そこでOKを押すと 「CSV(カンマ区切り)と互換性のない機能が含まれている可能性があります、この形式でブックを保存しますか?」 と出てきますのでここで「はい」をおすと ファイルの拡張子自体はcsvになるのですが カンマでの区切りではなく未だにエクセルのラインが残っております どうすればエクセルで区切られたマスをカンマに置き換える事ができるのでしょうか? 変換しようとした際に出てくるエラーに問題があるのでしょうか? そうだとしてもエラーの意味がわかりません… 教えてください よろしくお願いします

  • EXCEL VBAでカンマ区切りCSVファイルに変換する方法

    EXCELで作成したシートをVBAでカンマ区切りCSVファイルに変換する方法を教えてください 下記のプログラムではXLSファイルで保存されますが、カンマ区切りCSVにする方法が分かりませんでした。 '保存先パス名 NetPath = "V:\AAAA\" ' セルA1 には、ファイル名記入 BkName = ThisWorkbook.Sheets("Sheet1").Range("A1").Text & ".XLS" 補足:マクロを実行した時に自動でネットワークドライブ(V:\AAAA)へ保存、ファイル名はSheet1のセルA1の文字をファイル名として 保存するようにしたいです。 宜しくお願い致します。

  • カンマ区切りCSVファイルをVBAで読み込みたい

    こんにちは。EXCELのVBAに詳しい方、どうか教えてください! カンマ区切りCSVファイルをEXCELに読み込みたいのですが、 CSVファイルのデータが金額のため、データ自体にもカンマが含まれていて、 金額のカンマでも分割されてEXCELのセルに収まってしまいます。 データの区切りのカンマと、金額のカンマを区別して読み込む良い方法はないでしょうか。 とても困っているので、お解りになる方どうかご回答をお願いいたします。 ・CSVファイルのデータ   1,000 , 2,000 , 1,500 , 3,000 , 1,000 , 2,500 , 2,000  ↑金額のカンマでデータが分割されないように読み込みたいのですが・・・

  • CSVファイルについて

    お世話になります。 カンマ区切りのCSVファイルがあります。 Excelで開くと、以下のようになります。 項目1  項目2  項目3  1    あ,あ   いい  2    うう    ええ 項目2にある「あ,あ」は何故一つのセルにおさまっているのでしょうか。 Excelは内部的に何かを判別して、「これは(「あ,あ」は)カンマが付いてるけど別セルにするのではなく、ひとつのセルにする必要有り」みたいなことをやってるのでしょうか。 ふと疑問に感じ投稿させて頂きました。 ご教授の程、宜しくお願い致します。

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

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

  • カンマ区切りのcsvファイルを…

    カンマ区切りのcsvファイルをExcelで別々のセルに読み込むVBAのプログラムを作りたいんですが、なかなか調べても見つかりません。 プログラムもしくは参考になるサイト等あればお願いします。

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

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

  • マクロでのcsv読み込みについて

    エクセルのマクロにてcsvファイル(カンマ区切り)のデータを読み込むマクロを制作しているのですが、そのcsvファイルが1行めを2行目がデータ本体ではない為カンマの数が違い、openを使って読み込みを行うとうまくいきません。何かいい方法はないでしょうが。よろしくお願いいたします。

  • 【Excel】csvファイル取込み VBA処理

      VBAの初心者です。 csvファイル(カンマ区切り)の取込みをVBAで処理したいのですが、知識がないので 何方か詳しい方ご教授下さい。 動作的には以下のように処理したいと思ってます。 1. sheet1のボタンからテキストのインポート   任意のフォルダ(c:\data\i_data)からカンマ区切りで保存されたcsvファイル群から   選んで読込み。   読込むファイルに間違いがないか対話型で確認のメッセージを表示し、キャンセ   ルした場合は中断させる。 2. csvファイル内の200列分のデータ(指数)をsheet3の任意のセル(指定可能)に取込   み。セルの指定が出来なければ固定でも可ですが、行違いで他のファイルも取込   み出来るようにしたいのです。 色んなサイトからヒントを貰って自分なりに試してますが上手くいかず、行き詰って質 問させて頂いた次第です。 また別のQ&Aに記載されてましたFileSystemObjectが使えません。 お手数ですが、各行毎にコメント(解説)があると有難いです。 Excelのバージョンは"2007"ですが"2000"でも使えるようにしたいのですが・・ よろしくお願いします。

専門家に質問してみよう