• ベストアンサー

6桁の数字の上2桁で表される数字を西暦に変換

エクセル2003を使っています。 6桁の数字があります。 上2桁が西暦を表しています。 A列     B列 09xxxx → 2009 90xxxx → 1990 85xxxx → 1985 A列にあるデータを読み取ってB列に西暦で表示する方法を教えてください。 よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.1

簡易版:2012年で仕分ける =TEXT(LEFT(TEXT(A1,"000000"),2),"[<13]100;00")+1900

noname#157747
質問者

お礼

回答ありがとうございます。 見事に仕分けができました。 助かりました。 マルチポストをしてしまって、ご迷惑をおかけしています。 御礼記入後、回答を締め切ります。 ありがとうございました。

その他の回答 (2)

  • MackyNo1
  • ベストアンサー率53% (1521/2850)
回答No.3

6桁の数字で表示されている日付を、エクセル(正確にはWindowsの設定)に自動判定させるなら、以下の数式になります。 =YEAR(TEXT(A2,"00!/00!/00")*1) ちなみに、Windowsのデフォルトでは2029年(2桁が29)までが2000年代でそれ以上の数字の場合1900年代の日付になりますが、コントロールパネルの「地域と言語」の「追加の設定」の日付タブでカレンダーの欄を「2029」から変更することで切り替え年を変えることができます。

noname#157747
質問者

お礼

回答ありがとうございます。 2029年で区切られているのですね。 あっというまに2029年もやってきそうに思います。 大変勉強になりました。 ありがとうございました。

noname#157747
質問者

補足

回答ありがとうございます。 説明不足ですみません。 上2桁は西暦をしめしていますが、 下4桁は日付とは無関係なので、 教えていただいた方法ではできませんでした。 マルチポストをしてしまったので、御礼を記入したあとで締め切ります。

noname#204879
noname#204879
回答No.2

上2桁が 20、30 は 2020、2030 ですか? では、上2桁が 40~84 はどうする?

noname#157747
質問者

お礼

回答ありがとうございました。 40から84というのはWindowsの設定によってかわるということなのでしょうね。 大変勉強になりました。 他の方のところにも書いておりますが、 知らなかったとはいえマナー違反をしてしまいましたので、 この後質問を締め切らせていただきます。

noname#157747
質問者

補足

20、30は2020、2030ですが、現在までの年号しかはいっていませんので 2012年までが必要となります。

関連するQ&A