人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

エクセルのプログラムに関する質問です。

今、各セルにX?Zまでのデータが格納される可能性があるとします。
これをcsvで表現するとY,Z,X,X・・・などです。

次に、複数のデータが一つのセルに格納される可能性があります。
YZX,X,Z,YZ・・・などです。

しかし、データYとZは文字列なので、複数並べると一つのデータに見えてしまいます。

この場合、csvで扱おうと思うなら、通常どうするのが一般的ですか?

例えば、XやYの間に半角スペースを入れて
Y Z X,X,Z,Y Z,・・・でしょうか?

よろしくご指導くださいませ。


●質問者: ReoReo7
●カテゴリ:コンピュータ ウェブ制作
✍キーワード:CSV エクセル セル データ プログラム
○ 状態 :終了
└ 回答数 : 4/4件

▽最新の回答へ

1 ● きゃづみぃ
●25ポイント

CSVで扱うなら、CSVで保存すればいいだけでしょう。

また、セルとセルの区切りは、タブになっていますので、

タブを カンマに 置換すればいいでしょう。

ただ、セルの中にカンマがある場合は、セルを ""で 囲まないとダメですね。

◎質問者からの返答

いつもありがとうございます!


2 ● hiko3karasu
●23ポイント

""でくくって

"x,y,z"

で1つのセルになりますよ。

◎質問者からの返答

ありがとうございます。


3 ● yyok
●22ポイント

CSV的には文字列部分を"で囲めばいいと思います。

X,"Y Z",Z,Z

のように。

"で囲めば例えば

X,"Y, Z",Z,Z

の2つ目のデータは、「Y, Z」と,自体をデータに含めることも

できます。

データ中に"自体を含めるときは"を連続させ、例えば

X,"Y, Z","Z""",Z

とします。3つ目のデータは「Z"」として扱われます。

◎質問者からの返答

ありがとうございます。"の書き方も参考になります。


4 ● SALINGER
●22ポイント ベストアンサー

ExcelからCSVで保存すると、

A「カンマ区切り、データにカンマがあるとダブルクォートで囲む。ダブルクォートはダブルクォートで囲む。」

となります。

ただし、データによりダブルクォートで囲んでいるものと囲んでいないものが混在するので、VBAから読み込む場合には少し手間がかかります。


CSVの標準的なフォーマットは

B「カンマ区切り、全てのデータをダブルクォートで囲む。ダブルクォートはダブルクォートで囲む。」

になると思います。

http://codezine.jp/article/detail/2364?p=1

この場合はExcel以外のアプリケーションからの利用や、前述したプログラムからの読み込みやすさという点では、Aよりもよいと思います。しかし、Bの形式をExcelで開いて保存するだけでAに変わってしまうということが起きます。ExcelVBAでコードを書いた場合、Excelで読み込み処理をして保存するという最後のところをブックのSAVEで対処できなくなります。


ExcelVBAから利用する場合は、AかBかになりますが、読み込みと保存のコードが変わってくるのでコードを書きやすい形式にするのがいいと思います。カンマ以外の特定の文字(空白等)をデータ内の区切り文字として使う場合、文字列にその区切り文字が入る場合があるので難しいと思います。

◎質問者からの返答

ありがとうございます。うまくできそうに思います。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ