[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『日付の書式』(黒猫)
日付の表示を 5月29日 のように、数字も全角にしたいのですが、
[DBNum3]m"月"d"日"
という設定をすると、 2009/5/29 と入力すると 5月29日 と表示されますが、 5/29 という入力では 1月0日 になってしまいます。
5/29 のように、年をつけずに 月/日 の入力だけで、表示される月日の数字が 全角になるような方法はないでしょうか。
(黒猫)
[DBNum3][$-411]m"月"d"日" ではどうなるでしょうか。 (みやほりん)(-_∂)b
みやほりんさん、ありがとうございます。おかげさまで、うまくいきました(^_^)
ところで [$-411] という書式は始めて知りましたが、どういう働きを するのでしょうか? また、$-411 って何の数字なんでしょう?次にまたこの書式を使いたいとき、 どんな数字だったか忘れてしまいそうです。
(黒猫)
過去ログです。(ROUGE) [[20030521102113]]『[$-411]とはどういう意味』(ま)
ロケールIDというのがあるんですね。で、日本語が 411 なので、[$-411] とすれば、 単位や日付などが日本語の書式になる、ということは何となく分かりました。
でも 5/29 みたいな 月/日 の書式が日本語特有のものとは思っていませんでした。 [DBNum3] を付けなければ、5/29 と入力して、普通に 2009/5/29 と認識されていますし。
何はともあれ、当面の問題は解決しました。ROUGEさん、ありがとうございました。
(黒猫)
>[DBNum3]m"月"d"日" >という設定をすると、 2009/5/29 と入力すると 5月29日 と表示されますが、 >5/29 という入力では 1月0日 になってしまいます。 この現象についてすこし検証して見ました。 1月0日 と表示された時点での数式バーの値は「1900/1/0 4:08:17」 数値に直すと、「0.172413793103448」 これは「=5/29」の計算結果と一致します。 「[DBNum3]m"月"d"日"」を表示形式に設定すると、ツール>オプション>移行 で 日付区切り文字に「/」を使ったときには「式入力を変更する」にチェックを入れた ときのような計算をします。 日付区切り文字に「-(半角ハイフォン)」を使ったとき(例 5-29)には、「5月 29日(2009/5/29のシリアル値)」と希望のように変換されます。 したがって、この場合の解決方法は (1)[DBNum3][$-411]m"月"d"日" とロケール指定を含めた書式とする (2)日付区切り文字に「-(半角ハイフォン)」を使う (みやほりん)(-_∂)b
1月0日 となったのは、5/29 を 5÷29 と計算し、それがシリアル値とされていた、 ということだったのですね。 =5/29 のように = があれば数式ですが、[DBNum3]m"月"d"日" という書式では = がなくても 5/29 を数式とみなす、ということになるのですね。 それを防ぐには [$-411] をつける必要がある、と。
それでいて、 5-29 は引き算とはならないのですね。5−29 は引き算とすれば マイナスになり、シリアル値になり得ないので 月-日 と解釈するのかと思って、 5-3 と入力してみましたが、これも 5月3日 になります。 ( 試しに =5-3 と入力すると 1月2日になりました。)
なんだか不思議な仕様です。
そういえば、今は慣れてしまいましたが、エクセルを使い始めたころは、セル書式が 日付でなく標準の時でも ○/○ や ○-○ が日付とみなせるときは日付と解釈する、 という仕様に、違和感を覚えていました。
1年1組 や 第1章第1節 みたいなデータを入れるところで 1−1 を入れると、 勝手に 1月1日 にされてしまって、いらいらしていました。 書式を文字列にしておくか、頭に ' を付けるかすればよい、というのはすぐに分かった のですが、「入力したものをそのままの形のデータにするため」に、何かの設定が 必要である、という仕様がおかしいと思ったのです。
いまでも、たとえば 1−1 と入力したとき
○ 書式が標準ならそのまま 1−1 となる ○ 日付として認識させたいのなら書式を日付にしておく
というような仕様が素直であり、標準の書式の時に 1−1 を勝手に日付に変えて しまうのは、いらぬおせっかいだという気はします。
思わず愚痴ってしまいましたが、みやほりんさん、検証ありがとうございました。 何が起こっているのかということが少し分かりました。
(黒猫)
>[DBNum3]m"月"d"日" >という書式では = がなくても 5/29 を数式とみなす、ということになるのですね。 [DBNum3]を指定したときにだけ「5/29 を日付として受け入れない」という仕様は 設計者としては考えないと思うので、Excelのバグではないかと推察します。 初期状態の場合、セルに入力した内容は文字列として受け入れられます。 「5/29」の入力は受け入れられたあと、日付のシリアル値に変換されるのが通常です。 式入力の変更オプションというよりも、分数として受け入れられるているという感じですね。 (みやほりん)(-_∂)b
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.