Excelで扱うCSVファイル

文字列をダブルコーテーションで囲む

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

ぜひご覧ください。

無料で視聴する すべての加入プランを見る
または
CSVとして出力するとき、文字列をダブルコーテーションで囲む方法について解説します。
講師:
06:44

字幕

このレッスンでは文字列をダブルクォテーションで囲むという方法について解説します。尚、このレッスンでは C ドライブの Work フォルダーにファイルを出力します。C ドライブに Work フォルダーがない方はWork という名前のフォルダーを作成して下さい。CSV というのはそもそも異なるアプリケーション間でデータの受け渡しをする際に用いられた自然発生的に生まれた単なるテキストファイルの1形式です。決して Excel のデータ形式ではありません。様々なアプリケーションがCSV ファイルを使うためそれらアプリケーションごとにいろいろなローカルルールがあります。例えばよく聞くのは文字列をダブルクォテーションで囲って記録するという様なものです。ここでは Excel のワークシートに作成したデータをCSV ファイルとして出力する際文字列をダブルクォテーションで囲った CSV ファイルを作成しています。そもそも VBA ではダブルクォテーションというのは特別な意味を持つ記号です。例えばこのコードはセル A1 にtanaka という文字列を代入しています。右辺のデータはダブルクォテーションで囲まれています。 このダブルクォテーションはこの内側にあるものは文字列であるということを表す特別な記号なのです。では、このダブルクォテーションをこうした特別な記号ではなく単なる文字列として指定するにはどうしたら良いでしょう?それにはダブルクォテーションを4つ続けて記述します。ここではわかりやすく色を変えています。この4つのダブルクォテーションはどういう意味でしょう?まず両側にある2つのダブルクォテーションは先程の tanaka と同じようにこれらの内側にあるものは文字列である、ということを示しています。そして、左から2番目のダブルクォテーションはこの右側にあるものはVBA で特別な意味を持つ記号ではなく単なる1つの文字列だということを表すための記号です。この様なものをエスケープ文字等と言います。つまりダブルクォテーションを2つ記述するとそれは特別な意味を持つ記号ではなく単なる1つの文字列として扱えるということです。従ってセルとダブルクォテーションを結合するにはこのダブルクォテーション4つをセルと結合してやれば良いわけです。まずワークシートのデータを CSV として出力するコードを確認していきましょう。Open でファイルを開きます。 尚、ここでは出力したファイルの内容を確認しやすいようにあえて拡張子を txt にしてあります。For Next をネストしてワークシートを行方向と列方向に順番に操作しています。この For j = 1 To 3ここで変数 buf にセルとカンマを結合した文字列を作っているのですがではここで、例えば B 列のセルだけそのまま結合するのではなくダブルクォテーションで囲むというようなことを考えてみましょう。B 列のセルだけダブルクォテーションで囲むここでは1列目、2列目、3列目つまり A 列、B 列、C 列を処理していますので2列目の時だけセルをダブルクォテーションで囲むそうでない時は、つまり1列目と3列目はダブルクォテーションで囲まないという条件分岐が必要になります。このうち、セルをダブルクォテーションで囲まない方は先程確認したコードのままです。そしてもし2列目だったらセルをダブルクォテーションで囲むここは先程解説した様に4つのダブルクォテーションを& で結合してやります。この条件分岐を先程のコードに組み込むとこの様になります。ちょっとわかりにくいですね。ではこのマクロの動作を確認してみましょう。 Chapter03 の Output.xlsm を開きSheet2 を開いて下さい。まず VBE を起動します。「開発」タブを開き、左端の「Visual Basic」ボタンをクリックします。実行すると VBE が起動します。ここでは「標準モジュール」の「Module6」をダブルクリックして下さい。先程お見せしたコードが記載されています。For j = 1 To 3 の所でもし j が 2 だったらつまり2列目だったらセルの値をダブルクォテーションで囲みます。そうでなかったらつまり1列目と3列目はそのまま CSV のデータにします。ではこのマクロを実行してみましょう。プロシージャの中にカーソルを移動しツールバーの「Sub/ ユーザーフォームの実行」をクリックします。実行すると test03.txt というファイルが作成されます。ダブルクリックして中を確認しています。この様に B 列のセルだけダブルクォテーションで囲まれています。このレッスンでは文字列をダブルクォテーションで囲むというやり方について解説しました。

Excelで扱うCSVファイル

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

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

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

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

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