アカウント名:
パスワード:
CSV形式で出力するという要求があって、その項目に02(ゼロツー)とかあるんですが、これをそのままExcelでそのまま開くと、ただの2になってしまいます。ダブルクオートでくくったり、全角で出力したりといろいろやっても駄目だったんで、結局O2(オーツー)で出力することにしました。
# 枝には負けます。
csvを編集したいのならば、テキストエディタやCSVエディタで開くか、あるいは、拡張子をTxtにして、Excelで開くときに「テキストファイルのインポート」とすればいいだけなのでは……?
#うちのシステムでは素直に取り込み時に前ゼロ入れてますorz
「外部データの取込」を使うと拡張子を変更しなくても文字列として取り込めますね。
="02"
としておけば良かったのではないでしょうか。文字単位での修飾をしないのであれば、式の形であっても問題はないと思います。
なんと、こういう方法もあったんですね。機会があったら使わせていただきます。
# イケてる回避策
それをExcelで開くと'02という文字列になるんですよ。
.xlsで出力という仕様だったら苦労しなかったのに・・・
CSVに書式指定の標準仕様なんてない!という事が分からない人が多くて困る。先頭シングルコーテーションで文字列として認識するのはLotus-123の仕様だ。[0-9]*E[0-9]*な文字列とか[0-9]*-[0-9]*な文字列にさんざん泣かされたのでID。
CSVに書式指定の標準仕様なんてない!という事が分からない人が多くて困る。
御意。 某自治体案件で、顧客も元請け(元はただのコンサル会社)もそのことを知らずに「ここはCSVだから大丈夫」とろくに検証せずに本運用まで始めちゃってからトラブル続出で、下請けから説明を受けてから事の重大さに気づいて「上層部に知れたらえらいことだ」と「運用でカバー」した結果、誰も使わなくなったという事例に遭遇したばかり。
本当は要件定義やら設計の段階で下請けから「ここはMS CSVでいいんですね?」とか聞かれていたのだが、「CSV」しか耳に入ってなかったらしい。
デファクトかといわれると微妙ですが...
http://www.ietf.org/rfc/rfc4180.txt [ietf.org]
># ほんとどうでもいい内容だが, 敢えて ID.
IDかACかの使い分けの基準としては、それはイケてないぞ。
「どうでもいい」ならACってのは「褒め奉られそうな」内容だったらIDを選ぶってことかと思うが、それってつまりスコア稼ぎのチキン野郎ってことなのだから。
これはまさしく「イケてない回避策」だ。
だがインポート(オープン)直後だと'02 なんですよね・・・一回値を編集すると02になってくれる。
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
日本発のオープンソースソフトウェアは42件 -- ある官僚
十年以上前のお話 (スコア:5, おもしろおかしい)
予期せぬ結果が返る事があって、チーム全員で悩んでました。
色々詰めて行ったら、フィールド名に「枝」という字が入ってると
結果がおかしくなる事がわかりました。
うちの設計では、方々に「枝番」ってフィールド名があったのです
回避策ですが、誰が言い出したのか覚えてないですが、
「枝番」は全て「技番」に変更されました。
#場当たりもいいとこだ…
Re:十年以上前のお話 (スコア:1)
CSV形式で出力するという要求があって、その項目に02(ゼロツー)とかあるんですが、
これをそのままExcelでそのまま開くと、ただの2になってしまいます。
ダブルクオートでくくったり、全角で出力したりといろいろやっても駄目だったんで、
結局O2(オーツー)で出力することにしました。
# 枝には負けます。
Re:十年以上前のお話 (スコア:2)
csvを編集したいのならば、
テキストエディタやCSVエディタで開くか、
あるいは、拡張子をTxtにして、Excelで開くときに「テキストファイルのインポート」
とすればいいだけなのでは……?
#うちのシステムでは素直に取り込み時に前ゼロ入れてますorz
Re:十年以上前のお話 (スコア:1)
「外部データの取込」を使うと拡張子を変更しなくても文字列として取り込めますね。
らじゃったのだ
Re:十年以上前のお話 (スコア:1)
としておけば良かったのではないでしょうか。文字単位での修飾をしないのであれば、式の形であっても問題はないと思います。
Re:十年以上前のお話 (スコア:1)
なんと、こういう方法もあったんですね。
機会があったら使わせていただきます。
# イケてる回避策
Re:十年以上前のお話 (スコア:1)
↑
「先頭にシングルクオートを不可して文字列として扱う」が正攻法では?
# ほんとどうでもいい内容だが, 敢えて ID.
Re:十年以上前のお話 (スコア:1)
それをExcelで開くと'02という文字列になるんですよ。
.xlsで出力という仕様だったら苦労しなかったのに・・・
Re:十年以上前のお話 (スコア:1)
CSVに書式指定の標準仕様なんてない!という事が分からない人が多くて困る。
先頭シングルコーテーションで文字列として認識するのはLotus-123の仕様だ。
[0-9]*E[0-9]*な文字列とか[0-9]*-[0-9]*な文字列にさんざん泣かされたのでID。
Re:十年以上前のお話 (スコア:1, 興味深い)
御意。 某自治体案件で、顧客も元請け(元はただのコンサル会社)もそのことを知らずに「ここはCSVだから大丈夫」とろくに検証せずに本運用まで始めちゃってからトラブル続出で、下請けから説明を受けてから事の重大さに気づいて「上層部に知れたらえらいことだ」と「運用でカバー」した結果、誰も使わなくなったという事例に遭遇したばかり。
本当は要件定義やら設計の段階で下請けから「ここはMS CSVでいいんですね?」とか聞かれていたのだが、「CSV」しか耳に入ってなかったらしい。
Re: (スコア:0)
デファクトかといわれると微妙ですが...
http://www.ietf.org/rfc/rfc4180.txt [ietf.org]
Re: (スコア:0)
># ほんとどうでもいい内容だが, 敢えて ID.
IDかACかの使い分けの基準としては、それはイケてないぞ。
「どうでもいい」ならACってのは
「褒め奉られそうな」内容だったらIDを選ぶってことかと思うが、
それってつまりスコア稼ぎのチキン野郎ってことなのだから。
Re: (スコア:0)
これで01だろうが02だろうが入力できますよ
Re: (スコア:0)
そもそもcsvをexcelで編集っていうのもどうかと思いますが。
# 私的には、viか、pythonあたりのスクリプトで処理するのが妥当だと思うです。
# excelが使いたいなら、csvに拘る必要ないだろうし。
Re:十年以上前のお話 (スコア:1)
CSVファイルから新たにCSVファイルを作るときもExcelでやります。ソースとなるCSVファイルを貼り付けるシートを作り、そのデータを基にして、別のシートに出力させたいCSVファイルの元となる表を作成し、エクスポートするなり、notepad.exeに貼り付けるなりして、CSVファイルを作成します。出力用のシートは書き換え禁止にして、コピー&ペーストのみで対応しています。
私がやっている範囲では、マクロを使わなくても対応できています。空行は許容されていますし、複雑なものは出力用の表を複数シートに分けて対応しています。Excelのシートは関数型言語の性質があるので、Excelで再帰を書くコツさえつかめば、かなり複雑なこともできます。
数字を文字列として扱わせたいのであれば、出力用の表の中では、"TEXT()"を使います。そして、数値に変換されるのを防ぐため、「全て選択」「コピー」で、notepad.exeあたりに貼り付けます。ただし、多バイトの文字をUTF-8以外で扱いたいのであれば、他のテキストエディタが必要です。
#Excel2003ではCtrl+Aを2回押さないといけないことがあるのが面倒臭い。
Re: (スコア:0)
これはまさしく「イケてない回避策」だ。
Re: (スコア:0)
Re:十年以上前のお話 (スコア:1)
だがインポート(オープン)直後だと'02 なんですよね・・・
一回値を編集すると02になってくれる。
---にょろ~ん