• ベストアンサー

XLS→CSVでセルの末尾のスペースが?に

いつもお世話になります。エクセルのA列に、末尾に1つor2つのスペースをもつデータが入っています。このエクセルファイルをCSV形式で保存すると各セルの末尾にスペースの個数分だけ?がついた結果となりました。 例 xls:○○○_(末尾にスペース1つ) ↓ csv:○○○? この末尾のスペースを消そうと、xlsシートでTRIM(A1)のデータを試みましたがスペースは消えていません。CSVでTRIM関数を使うとセルデータがすべて消えます。このxlsでのスペース(csvの?)は消せないのですか?あるいはこれはスペースでないのでしょうか?ご教授いただければ幸いです。

  • amine
  • お礼率69% (38/55)

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

  • ベストアンサー
  • Wendy02
  • ベストアンサー率57% (3570/6232)
回答No.1

こんにちは。 環境がぜんぜん書かれていないし、CSVが先なのか、XLSが先なのかも書かれていないので、推測でしかありませんが、 CSV の 「○○○?」の「?」と見える環境は、S-JIS でしょうね。 ExcelのXLSは、 その時々の環境によって変わりますが、Unicode になっているのではないかと思います。 Excelの標準は、いまだ、S-JISにはなってはいますが、Unicode にも対応しています。 もし、削除するのでしたら、そのスペースのみをコピーして、編集-置換で、検索値に、そのスペースを貼り付けて、置換値は、何もいれないようにして、実行すれば、削除できたと思います。 CSVをメモ帳で読んで、同じように置換しても出来ると思います。 私は、Webサイトのテキストをコピーしてテキストファイルにすると、同じような現象が現れますので、やはり、テキストエディタの置換で削除しています。

amine
質問者

お礼

Wendy02様、説明が不十分で申し訳ありませんでした(XLSが先でCSVで保存の場合でした)。言われる通り、xlsからでも、CSV→メモ帳で置換でも削除できました。ありがとうございました。

関連するQ&A

  • xls.形式だと0があり、csv.形式だと消える

    0120111222 という数値がxls.形式では表示されるのですが、 csv.ファイルで保管すると先頭の0が消えてしまいます。 (メモ帳にこのファイルをドラッグして参照してもやはり先頭の0が消えている) →メモ帳にドラッグした際に先頭の0が残るようにするためには、どこを 直す必要がありますでしょうか?? <参考> xls.のセルの表示形式:文字列 csv.のセルの表示形式:標準

  • 文字列末尾のスペースを削除したい

    Excelのセルに入っている文字列末尾のスペースを削除したいのですが良い方法はありませんか。 セルの数が少なければ一個ずつ削除するのですが、数百個もあるのでできれば関数を使用して一気に処理したいです。 バージョンはExcel97を使用していますが、2000ならできるという情報でも構いません。よろしくお願いします。

  • csvをxlsに変換する方法を教えてください

    CSVファイルをXLSに変換する方法を教えてください。 「名前を付けて保存」で拡張子をcsvからxlsに指定して保存したものを開くとデータが”、”で区切られただけで、1列の形にごちゃごちゃデータが詰まった表示になってしまいます。最初に開いた形でそのままxlsの形にしたいのですが何か方法はありますでしょうか。 エクセルのバージョンは2003です。 よろしくお願い致します。

  • Excelのcsv保存について

    別ブックのデータを参照して、csvで保存するためのブックを作ったのですが、参照のための関数が入力されているセルもcsvにnullで出力されてしまいます。 参照元.xls  A B C D E 1 あ い う え お 2 か き く け こ 3 さ し す せ そ 4 5 csv出力用.xls A1~E5には作業の都合上、 =IF([参照元.xls]Sheet1!A1="","",[参照元.xls]Sheet1!A1) のような関数を入れて参照しています。  A B C D E 1 あ い う え お 2 か き く け こ 3 さ し す せ そ 4 5 これをcsvで保存すると、 あ,い,う,え,お か,き,く,け,こ さ,し,す,せ,そ ,,,, ,,,, と、データは未入力だけど関数が入っている部分まで保存されてしまいます。 これを、 あ,い,う,え,お か,き,く,け,こ さ,し,す,せ,そ ここまでで保存できるような方法、 もしくは関数などはありませんでしょうか。 csv出力用のブックでは一括半角置換や全角置換、 誤入力されたハイフンやスペースの削除などをおこなっているので、 できればこの参照形式は崩したくありません。 わかるかたいらっしゃいましたらアドバイスをお願いします。

  • 半角全角スペースの削除(先頭&末尾)

    やまとです。 ある文字列の先頭と末尾のスペースを取り除きたいのですが、 どのようにしたら良いでしょうか? 事前に試した事が2つあります。 1.trim を使用する。  $aiueo = " あいうえ お "; $aiueo = trim($aiueo));  とすると、スペースが削除されます。  しかし、これでは全角のスペースが削除されないようですね。 2.置換する。  $aiueo = " あいうえ お ";  $aiueo = str_replace( ' ', '', $aiueo );  とすると、全角のスペースが削除されます。  しかし、文字列の先頭と、末尾以外の全角スペースも削除されてしまう  ようですね。 では、文字列の先頭と末尾の半角スペースと全角スペースを削除したい場合は どのようにしたら良いでしょうか? ご教授願います。

    • ベストアンサー
    • PHP
  • 大量のデータ(csv.)をEXCELライクに処理したい

    お世話になります。 今手元にACCESSで開くと100万レコードある料金データがcsvファイルであります。 これを普段EXCELで使っているような関数を当てはめて、 コストシミュレーションを行いたいと考えています。そこでご質問です。 (1)EXCELでは「A・B列にある各セルの値の平均をC列に表示する」 もしくは「A列にある各セルの値の総和を末尾に出力する」 といった関数が使えますが、ACCESSでは同様の操作ができますか?  仮にできるとすればどのような操作が必要なのでしょうか? (2)EXCELではA列以前のデータをそれ以降のデータを別ファイルとすることができますが ACCESSでもこのような操作はできるのでしょうか? お手数をおかけしますがご回答よろしくお願いします。

  • エクセルでcsvデータを自動読み込みする方法(至急)

    csv形式のファイル(内容は計測値データ)をエクセルに読み込み、csvファイルの各データが規定値内に納まっているかの確認が容易できる方法を探しています。 このとき条件として、 (1)csvファイル内のデータは10項目程度。 (2)csvデータはランダムに更新される。 (3)エクセルに読み込むときはエクセルシート内の決められたセルにそれぞれデータが格納されること。 (例)csvファイルに"110"と"119"の2種類のデータがあった場合、あらかじめxlsファイルのセルA1に「警察」、セルA2に「消防署」と記入しておき、csvファイルのデータを読み込んだとき、セルB1に"110"、セルB2に"119"と入力される。 (4)csvファイル自体は開かず、必要なときにあらかじめ作成したxlsファイルを立ち上げると、自動でcsvファイルの内容を吸い上げる。 (5)入力されたデータの適否をそれぞれ判定する。 (6)xlsファイルを立ち上げている間にcsvファイルが更新された場合、xlsファイルの更新方法は手動と自動を選択できる。 こんなこと出来るでしょうか? 特に(4)が困っています。csvファイルをエクセルで開いた状態であれば、この内容で出来たのですが・・・。 どなたか良い方法があったら教えて下さい。お願いします。

  • .xlsと.csvが開かない

    知り合いから以下の2つのファイルを送られてきましたが、エクセルで開くことができません。 hogehoge1.xls hogehoge2.csv ・どちらのファイルも、MS-Excel2003で開こうとすると、「このファイルの形式を認識できません」と表示されます。 日本マイクロソフトのページから最新のExcel Viewerを導入してViewerから開いても同じです。 ・テキストエディタ(メモ帳)で開くと、どちらのファイルも文字化けしており、バイナリファイルっぽい感じです。Nullも含んでいます。 ・普通、csvファイルはもちろん、*.xlsでもテキストエディタで開くとヘッダー部分でなんとなくエクセルだと判断できますが、このファイルはエクセルっぽくありません。 .xlsのファイルは、最初の8バイトくらいがみんな同じですが、その8バイトがありません。 ・拡張子を .xlsxや、.lzh 、.zip、.exe に変換してみましたが、どれも開くことができません。 「xxxを試してみては?」などのアドバイスをいただけると助かります。 本人に聞くのが一番だとは思っていますが、しばらく本人に連絡がとれないため、ここで質問させていただきました。 こちらの環境 WindowsXP SP3 MS-Excel2003

  • カラムの末尾にスペースが入る

    VBAで固定長のファイルをテーブルに取り込みCSVファイルとしてカンマ区切りで書き出すというプログラムを作っています。 1111,55___,77____,5_____,77__,555____,999__      _はスペースのことだと思って下さい。 などといった感じのファイルを取り込むのですが、スペースを削除するためにTrimで切ってテーブルに取り込んでいるのですが、取り込むと必ずいくつかの決まったカラムに半角スペース6個分のスペースが入ってしまいます。 カラムの文字制限10で入力文字が2などなら、6個分のスペースが入り、 入力文字が7ならスペースは3つ入り、入力文字が10ならスペースは入らないという現象が起きています。 Trimで切っているのですから、入力文字が何文字であろうとスペースは入らないはずなのですが、決まったカラムにだけこの現象が起きています。 デバッグで見てみたところ、データを取得しているところでは、きちんとTrimで切られている形で取得することが出来ているのですが、テーブルの中を見ると半角スペースが上の規則で入っているというのが現在の現象です。 なぜこのようなことが起きるのか・・どなたか解決策が分かる方はいらっしゃいますでしょうか。お願いします。

  • スペース含むテキストをCSVの1セルに貼り付けたい

    次のようなエクセルファイルがあります。 A   B    C   D 1  【文字】 文字 URL これはエクセルで作ったものですが、CSVファイルに貼り付けると A,B,C,Dのセルに分割して貼り付けられてしまいます。 テキストエディタに一回貼り付けてCSVに貼り付けてみたりしたんですが同じです。 この 1  【文字】 文字 URL を  Aのセルに貼り付けるにはどうしたらよいでしょうか? わかる方、よろしくお願いいたします。

専門家に質問してみよう