アプリ版:「スタンプのみでお礼する」機能のリリースについて

CSVを直接ダブルクリックしてExcelを開くと、住所の番地のみ入っているセルが、日付に自動変換されてしまいます。テキストファイルにリネームしてファイルを開きテキストファイルウィザードで変換すればよいのですが、エンドユーザーが使用するので、ダブルクリック一発で開かせたいです。何か良い方法はありませんか?
ちなみにCSVはフィールド毎にダブルクォーテーションで囲っています。

A 回答 (3件)

#2の補足です。


>WSHで、RegExp を使って行ってもよいです。(こちらで提供できます)

あくまでも、Excelではない場合の仮定の話で、CSV排出時に、Excelで「プレフィックス」をつければよいのですね。
    • good
    • 0

こんにちは。



>エンドユーザーが使用するので、ダブルクリック一発で開かせたいです。何か良い方法はありませんか?

それなら、そのCSVの提供側の問題だと思います。

私個人は、提供側が、そのために、負担を掛けていくと、提供側が、ネズミ算的に仕事が増えてしまうので、他人事でいわせていただくなら、それはユーザーにクリック方式はやめさせて、きちんとした方法でファイル・インポートさせたほうがよいと思うのです。あくまでも、ExcelはExcelとしての使い方としてです。

ただ、もし、完全に、Excelのみの提供なら、xlsなり、hmt(MHTML) やHTMLスタイルにすれば早いのではないでしょうか?

>ちなみにCSVはフィールド毎にダブルクォーテーションで囲っています。

しかし、人為的にそこまでしているなら、必要な箇所に、プレフィックス(「'」)をつけて、CSVを提供すればよいのではないかと思います。Perl やSEDや、そうでなければ、テキストエディタで、正規表現でプレフィックスでつければ、一回で済みます。それが出来ないなら、WSHで、RegExp を使って行ってもよいです。(こちらで提供できます)

生のCSVから、直接ファイルをクリックして、Excelに、日付の変換のキャスティングがないようにするというのは、一般のExcelの設定には、私はないと思います。また、そのようなものを作ったところで、設定は、拡張子を換えるよりも遥かに難しいです。
    • good
    • 0

それがExcelの仕様なので不可能です。


テキストファイルウィザードを使うか、マクロを使うしかありません。
マクロはこんな感じ。 3列目を文字列として扱っています。
Sub test()
Workbooks.OpenText FileName:="a:\test.txt", Comma:=True, _
FieldInfo:=Array(Array(1, 1), Array(2, 1), Array(3, 2))
End Sub
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!