Excelで扱うCSVファイル

CSVデータをセルに代入する

全333コースを10日間無料で

ぜひご覧ください。

無料で視聴する すべての加入プランを見る
または
読み込んだ1行分のデータを、カンマで分割し、各セルに代入する方法を解説します。
講師:
07:32

字幕

このレッスンでは CSV データをセルに代入する方法を解説します。まず、このチャプターで使うテキストファイルを準備しておきましょう。C ドライブに Work というフォルダーを作成しチャプター2の Sample.txt 、Sample.csvData.csv を保存してください。尚、このレッスンではSample.csv を使用します。この Sample.csv の中身はこのようになっています。日付・名前・数字がそれぞれカンマで区切られています。いわゆる CSV 形式のファイルです。では読み込む方法を解説します。まず、CSV のファイルを扱うには何がなくてもファイルを開かなければなりません。Open ステートメントを使ってファイルを開きます。この時、For の後ろにはデータを読み込むことを表すInput を指定します。続いて1行分のデータを読み込みます。この時使用するのが Line Inputステートメントです。Line と Input の間に半角スペースを忘れないようにしてください。これを実行すると1行分のデータが変数 buf に読み込まれます。この変数 buf に格納された1行分のデータは日付・文字列・数字がカンマで区切られているんでしたね。 そのカンマで区切られたデータをSplit 関数で分割します。Split 関数は配列を返す関数です。配列を投げてくるわけですからそれを受け取る変数はバリアント型でなければなりません。バリアント型変数は配列を受け取るとそれ以降自分自身を配列に変化させ配列のように扱えるようになります。配列になったデータをそれぞれのセルに格納していきます。例えばこんな感じです。変数 i を増やしていけば1行目・2行目・3行目という具合にデータを格納していけますね。そして、この1行分読み込む、Split 関数に分割する、セルに代入する、ところまでをDo Loop で繰り返します。繰り返しの条件は読み取りポイントがファイルの終端End of File、 EOF に達するまでです。そのような繰り返し条件を指定することでテキストファイルの1行目から最終行までを自動的に読み取ることができます。Do Loop が終わったら開いたファイルを閉じます。こういう流れになります。では、これを具体的なマクロのコードで見てみましょう。1行目は変数の宣言です。Line Input で、1行分を読み込む変数 bufこれは文字列型 String を指定します。 そして Split 関数の結果を受け取る変数 tempこれはバリアント型で指定します。最後にワークシートを上から順番に1行目・2行目・3行目と指定するための変数 iこちらは行を格納するので整数を入れる Long 型にします。2行目でファイルを開いています。拡張子 csv を指定している点に注目してください。ファイルを読み込むので For の後ろにはInput を指定します。Do Loop を使って上から順番にワークシートのセルを操作するのでまず変数 i の初期値を設定しておきます。ここでは1にしました。Do Loop の中でやっていることはLine Input で1行分のデータを読み込んでいます。そのデータが変数 buf に入っています。その変数 buf のデータをカンマで分割します。そこで使うのが Split 関数です。Split 関数の結果をバリアント型の変数 temp に代入します。するとバリアント型の変数 temp は自分自身をパッと配列に変えます。配列は必ず 0 から始まります。従って、0号室を1列目1号室を2列目2号室を3列目に代入していきます。それが終わったら行を1つ下にずらす意味でi を1増やしてやります。 この動作を Do Loop で繰り返します。Do Loop の条件はEOF 関数が false の間だけ。この指定の仕方はUntil EOF(1) と書きます。では、実際にマクロの動作を確認してみましょう。チャプター2の Input.xlsm を開きSheet2 を開いてください。尚、ブックを開いたときにマクロを無効にした旨のメッセージが表示されたときはコンテンツの有効化ボタンをクリックするなどしてマクロを有効にしてください。VBE を起動しましょう。「開発」タブを開き左端の Visual Basic ボタンをクリックします。実行すると VBE が起動します。ここでは Module4 をダブルクリックしてください。今解説したコードが記載されています。マクロの各行を読んでどういう動作か、何を指定しているのかをイメージしてからマクロを実行してみましょう。「Sub/ ユーザーフォームの実行」ボタンをクリックします。実行するとCSV のデータがワークシートに展開されました。これが CSV をテキストファイルとして扱ってワークシートに代入する、そういうやり方、考え方です。このレッスンでは CSV データをセルに代入する方法について解説しました。

Excelで扱うCSVファイル

CSV形式で保存されたテキストファイルをダブルクリックすると通常Excelが自動的に起動しますが、しばしばデータが正しく読み込まれないなどのトラブルが発生します。このコースでは必要な用途に合わせて適切にデータを読み込めるように、CSVファイルを扱ううえで必要な知識や読み込み・出力のさいの注意点などについて解説します。

2時間04分 (20 ビデオ)
現在、カスタマーレビューはありません…
 
ソフトウェア・トピック
価格: 1,990
発売日:2014年03月05日

このコースは、「オンデマンド」でご利用可能であり、ダウンロードすることもオンラインで見ることもできます。

ダウンロードすると、オフラインでコースを使用し、豊富なインターフェースをフルに活用できます。複数のデバイスを使用したり、 一度に全コースをダウンロードしたくない場合は、アカントにログインして、ストリーミング・ビデオとしてコースのレッスンを視聴してください。

ビデオトレーニングをお楽しみいただけますように! お問い合わせは、cs-jp@lynda.com宛までご連絡ください。