[[20040414120617]] 『エクセルデータをCSVに変換するとセルに?が』(むうさん) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『エクセルデータをCSVに変換するとセルに?が』(むうさん)

[エクセルデータをCSVに変換する際、?が出現]

はじめまして。
初歩的な質問かもしれないのですが、会社のエクセルデータをCSVへ加工した時点で一部のセルに?が突然出現してきます。
エクセル上では存在しないのにCSVに保存すると文字列の後に?の文字が出てくるため、原因がわからず困っています。また、取引先からメールに添付されたエクセルを多数扱っており、エクセルのヴァージョンはわかりません。ちなみに私のPCはWindowsXP,Excel2000を使っています。
お忙しいところすみませんが、宜しくお願いします。


 どのようなEXCELデータを
 どのように
 >エクセルデータをCSVへ加工した
 のか分からないと、回答しにくいです。

  (INA)


通常取引先から戴いたエクセルデータに関数を使って当社のシステムデータに反映させているのですが、今回試しに何もせずに「名前をつけて保存」を選び、ファイルの種類をCSV(カンマ区切り)を選択して保存したところ、やはりCSVファイルの一部のセルに?が出現しました。
(CSVをワードパットで開いてみても?が出現していました。)
元のエクセルデータに何か設定されているのでしょうか?


 そのセルに入力されているテキストは何でしょうか?

 新規ブックから再現させる方法はありますか?

  (INA)


 >エクセル上では存在しないのに
 これは間違いありませんか?
見えていないだけで、半角スペースが存在しているのではありませんか?
次のことを確認してください。
 
(1)F2 キーを押したとき、見えている文字列よりも右側にカーソルが出る
(2)=CODE(RIGHT(上記(1)のセル,1))の返り値が「160」
 
(1)(2)が該当するなら、以下を参考にしてください。
 
以前、確か同じような相談があって、(マクロでの置換の話でしたが、)
半角スペースが「?」に変換されてしまうものがありました。
 半角スペースには実は2種類あり、「英数半角スペース」「カナ半角スペース」
が存在します。そのときに悪さをしていたのが、「カナ半角スペース」で、
マクロで置換を記録すると、対象の文字列が「" "」ではなく、「"?"」で記録
されてしまう、というものだったと思います。
[[20040116151828]] 『セル内の空白を削除したいのですが・・』(よ)
今回もこれと同じ現象ではないかと想像します。
つまり、「=CHAR(32)」で表現される英数半角スペース、「=CHAR(160)」で表現
されるカナ半角スペースがテキストに変換されるときの違いであると思います。
テキストコンバート時に「英数半角スペース」はもちろんそのまま半角スペース
になるのですが、「カナ半角スペース」はどうもサポートしていないようです。
 
こちらで再現したのは次の方法においてです。
どこかのセルに=CHAR(160)を入力し、CSV形式で保存。
=CHAR(160)の部分のテキストは「?」として保存される。
 
なぜ、「カナ半角スペース」が紛れ込むかはその取引先に問い合わせるべきことと
思いますが、汎用機などのデータから出力したデータをインポートなどしているの
ではないでしょうか。
対処法は先のリンクにも書いてありますが、
該当の半角スペースをコピー
「編集」−「置換」
「検索する文字列」に半角スペースを貼り付けして空白に置換。
 
もしくは、
 =SUBSTITUTE(A1,CHAR(160),"")
のような数式で該当のセルから問題の半角スペースを削除し
クリーンなデータを作る、という方法が考えられます。
 
もし、はずしているようなら、ゴメンナサイ。
(KAMIYA)

コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.