[[20040201001801]] 『西暦年を下二桁表示に変更する』(パル) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『西暦年を下二桁表示に変更する』(パル)

すでに入力してある表の中の西暦年を下二桁にする場合に、セルの書式設定、ユーザー定義でyyを設定しましたが、思うようにいきません。それで、西暦年に月を追加(例えば、1998を1998/1)したら、ユーザー定義通りの下二桁(yy)表示になりました。この方法で残りの年も処理しましたが、いまひとつしっくりしません。西暦年を下二桁にする他の方法があったら、教えてください。


 表示形式のユーザー定義で「yy」に設定しているのですよね。
 「思うようにいかない」のは、設定したセルにどんな値を入力したときですか?
 文面からは「年数」「年数/月」だけ入力しているように感じられますが。

 たとえば「98」と表示したくて「1998」を入力すると、
 エクセルは「1900年1月1日」を「1」とする「1998日目」の日付(1905/6/10)と認識します。
 「05」などと表示されるのではないですか?
 表示形式「yy」は「入力された日付の年部分の下二桁だけを表示する」ものなので、
 この目的のためには「エクセルが日付として認識できる」形式で入力しないと
 正確な表示は期待できません。

 なお、このような掲示板では「思うようにいきません」「しっくりしません」では
 どのようにうまくいっていないのかが伝わりません。
 「Aと入力してXのように表示させたいのにYのように表示される」などと
 具体的な結果も書いていただけるとスムーズなコミュニケーションができるので、
 そのように心がけてください。
 (KAMIYA)

 肝心の対処法をかきわすれてますね。
 おそらくセルには「1998」などと年数だけが入力されていて
 それを下二桁だけの表示にしたいということだと思うので、

 「1998」と入力された数値を下二桁だけ表示するには表示形式を
 「###0」として二桁目と三桁目の間でCtrl+Jで改行コードを挿入
 ただしこの方法だと行の高さによっては上二桁が表示されたり、
 部分的に表示されてしまったりとうまくいくとは限りません。

 そこで、通常は数式で二桁の数値をつくります。
 一列追加してその列に「=MOD(A1,100)」または「=RIGHT(A1,2)」などとして
 元の列を非表示、上書きしてよいのなら数式でできた文字列を値貼り付けで。
 (KAMIYA)

舌足らずで失礼しました。作業の流れをもう一度説明します。ご指摘の通り、セルにはすでに1965年から2004年までの年号が「1965」などと入力してあり、これを下二桁に変更しようとしました。セルの書式設定、表示形式のユーザー定義で「yy」に設定したら、「05」などと表示されてしまいました。数字の後に斜線「/」を加えれば日付として認識すると某雑誌の記事にあったので、1965を「1965/1」、「1966/1」に変え、残りはオートフィルターで一括変更しました。それから、全体をユーザー定義で「yy」で下二桁に修正しました。暦年ベースの推移表からグラフを作成した時、グラフ上の年表示を見やすくするために下二桁に変更する作業をしていました。他にも方法があるのかなと思い、おたずねした次第です。お騒がせしました。(パル)

 解決した・・・のかな?
 もとの数値を残さなくてもいいのなら、
 日付変換して「yy」が早いですね。
 (KAMIYA)


わかりません結局どうすれば西暦下2桁表示になるのですか?


 これ、別の方の質問??
 2004年の質問が上がっている意味が解らないけど、取り合えず。
 表示形式の型というか参考と言うか・・・・。
 BJ

 yyyy/mm/dd   → 2012/03/01
                  2012/12/01

 yy/mm/dd     → 12/03/01
                 12/12/01

 yyyy/m/d     → 2012/3/1
                 2012/12/1

 ここにあった。
http://www.excel.studio-kazu.jp/lib/e3g/e3g.html

 >結局どうすれば西暦下2桁表示になるのですか?
回答は書かれていると思うけれどもね。
 
どうすれば、ではなくて、何が入力されているか、を
解っているかどうかです。解っていないと質問もあいまいになるし、
回答も的外れになります。
「数値」と「日付(シリアル値)」の関係はヘルプなどでまず自習してください。
シリアル値も結局は数値ですが、「1998」を人間が「年のつもり」で入力しても、
エクセルは「4桁の数値」としてしか扱っていませんから、yy指定しても
日付としては期待はずれの値しか返りません。
エクセルは論理的ですが、融通は利かないので人間の「つもり」は
理解してくれません。

2012が入力されていてその下二桁だけ表示
基本的に表示形式設定ではできないが、「###0」として二桁目と三桁目の間でCtrl+Jで改行コードを挿入、セルの高さなどを調整して下二桁だけ表示できたように見せかける。
20120301などの8桁の数値
区切り位置ウィザードで一旦シリアル値に変換後、シリアル値での手順で。
2012/3/1などのシリアル値
表示形式のユーザー定義で書式文字列をyyにする。

 つまり、日付(シリアル値)ならyyで表示するのが一番簡単だけど、
「日付のつもり」で入力している値は一工夫、二工夫必要ですよ、ということです。
(みやほりん)(-_∂)b

 グラフを見やすくするため、下2桁だけにする。
 年号は1列あるいは1行に入力されています。
 =MOD(A1,100) の結果をコピー値貼り付けで、変換できるのでは。   (NB)

コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.