ExcelからCSV出力して読込むと削除変換される
Excelのブック1のシートに入力されたデータを
一度、CSVファイルに出力して
このCSVファイルを別のツール(perlなど)で変換して
この変換されたCSVファイルを再び
別のExcelのブック2のシートに読み込ませたいのですが
Excelのブック1から出力したCSVファイルを
別のツールで変換しなくてもそのまま
Excelのブック2のシートに読み込ませた時点で
文字の一部が消えたり数式が値になったりしてしまっています。
具体的には、
セルの先頭の ' (シングルクォーテーション) が消えてしまったり、
1つ足りなくなったりしています。また、
先頭の =1+1 などは、(表示上) 2になったりしてしまっています。
なお、セルの書式設定が標準だと、先頭の @ の後に続けて入力すると
正しく入力できませんが、セルの書式設定を文字列にすると、
この @ の問題は起きなくなりました。でも、セルの書式設定を文字列にしても
' (シングルクォーテーション) や数式が計算結果になる問題は
解決していません。
(問1) 削除されたり変換されてしまうのは
・先頭の ' (シングルクォーテーション)
・先頭の =
・先頭の @
の3つのケースだけでしょうか。
このほかにもありましたら教えてください。
(問2) 先頭の =1+1 の場合ですが
セルの書式設定が標準の状態で =1+1 と入力すると
数式バーには =1+1 と表示されていて
セルの書式設定が標準だと2と表示されていてその後
セルの書式設定を文字列にしても2と表示されています。
逆に、
セルの書式設定が文字列の状態で =1+1 と入力すると
数式バーには =1+1 と表示されていて
セルの書式設定が文字列だと =1+1 と表示されていてその後
セルの書式設定を標準にしても =1+1 と表示されています。
いずれも入力したデータは同じなのに
入力時点での表示形式で表示内容が固定されてしまっていて
その後、表示形式を変更しても表示内容が反映されていない
ように感じるのですが何が起きているのでしょうか。
(問3) 前述の理由により、CSVファイルをセルの書式設定が文字列
の状態で読み込ませることはできるのでしょうか。
(後でセルの書式設定を文字列に変更しても =1+1 と表示されないので)
(問4) Excelのブック1のシートのセルには
ユーザーが好き勝手な文字や数値や記号を入力します。
何を入力されても変化してしまわないようにすることはできるでしょうか。
( 頭に ' を付けることをユーザーに強要するとか、
事前にセルの頭に ' を入力しておくなどはなしです)
(問5) もし、できない場合、Excelのブック1のシートの各セルの先頭に
' (シングルクォーテーション) や = から始まる数式を
入力することができないように制限をかけることはできるのでしょうか。
よろしくお願いします。(Windows7,Excel2010)
お礼
ありがとうございます! 教えて頂いた方法で解決しました!