[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『+が先頭につく文字列が勝手に=+に変換されて困っています』(スフレ)
「+あいうえお」のように文章の前に+(半角)が記載されているcsvをエクセルで読み込むと勝手に「=+あいうえお」に変換されてしまってそのセルが「#NAME?」となってしまいます。
csvを開く度にそのセルを「セルの書式設定>文字列」にして=を削除しているのですが1万件以上を手直ししていて非常に大変です。
csvを開くときに勝手に=が付かないようにするにはどのようにすれば良いのでしょうか?
いちおうこのサイトで検索してみましたが=や+で検索すると膨大な量の関係ない質問が出てきてしまって探せませんでした。
どうぞよろしくお願い致します。
< 使用 Excel:Excel2007、使用 OS:Windows8 >
もしかしてこれかな? http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1441125824 (se_9) 2015/01/05(月) 22:45
se_9さん
そちらの回答にある
オフィスボタン → エクセルのオプション → 詳細設定 → 下の方にある「式入力を変更する」のチェックをはずす
ですが確認したところすでにチェックが外れていました。
チェックが外れた状態でも勝手に=がついてしまいます。
(スフレ) 2015/01/06(火) 02:57
昔、表計算ソフトでほぼ標準だったlotus1-2-3では先頭に符号(+,-)を入力することで式を入力できるようになっていたため 後発のExcelでも同じような入力をできるようになっている。
CSVを読み込む際にそのような変換が行われないようにしたいならばまずExcelそのものを立ち上げ後、データ-外部データの取り込み- テキストファイルでそのCSVファイルを指定、テキストファイルウィザードで符号が先頭にある列のデータ形式を文字列としてはどうか? (ねむねむ) 2015/01/06(火) 09:26
ねむねむさんが書いている手順をVBAの自動記録で作ると楽かもしれません。 (se_9) 2015/01/06(火) 09:44
これはエクセル側の話であって、CSVを開くと、【まっさらな標準書式のシート】に展開されるので
またもや、=+あいうえお になってしまうのは、仕様というか宿命かな。
ただし、1万件以上の作業をしなくてもいいということ。
●チェックが外れた状態でも勝手に=がついてしまいます。
これも、開いた時点では標準書式になっているので。
ワンタッチで処理をするなら、置き換えにいたる操作なり、外部データ取り込みでの操作なり
をマクロ記録でマクロ化して,それにショートカットキーをつけて、エクセルマクロブックとして保存しておいて
CSVを開くときには、まずマクロブックを開いた上で、CSVを開き、Ctrl/そのショートカットキー で一発。
少しは楽かな。
(通りすがり) 2015/01/06(火) 10:06
>ねむねむさん、se_9さん
ありがとうございます。
VBAで可能なのですね。
>通りすがりさん
ありがとうございます。
ちょっと方向性を変えて、「csvファイルを開いた直後にVBAを自動的に実行させる」ということは可能ですか?
通常のcsvをエクセルで開いたとき(開き方は様々ですが、外部データの取り込みではなくファイル>開くに準ずる開き方)にVBAを自動実行。
1. VBAで開いたファイルがcsvと判定
2. セルを全て文字列に変換、=+を+に置換
おそらく1.さえできれば2は簡単だと思うのですが・・・。
これができれば一度VBAを作ったら後は開くときに特に意識せずに使える気がします。
どうぞよろしくお願い致します。
(スフレ) 2015/01/06(火) 14:06
ここは、発想をかえて
・エクセルブック(マクロブック)を開く
・自動的にCSVファイル選択ダイアログを表示(もちろんマクロで)
・CSVファイルが選択されたらそれを開き(もちろんマクロで)
・CSVファイルに対する置き換え処理等を実行し(もちろんマクロで)
・エクセルブック自身を閉じる。(もちろんマクロで)
・画面にはCSVファイルだけが残る
こんな感じがいいんじゃないかな?
(通りすがり) 2015/01/06(火) 14:26
ありがとうございます。
ここは自力でなんとかしようと思います。
(スフレ) 2015/01/06(火) 19:32
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.