Excel Tips by pPoy

トップへ←Top    VBAへVBA  VBA基礎へVBA 基礎  一般へ一般  

TEXT 和暦から西暦を求める方法(2000,XP,2003)
ワークシートに、和暦で入力された値 (生年月日 等) から西暦を求める方法です
一括で変換するのではなく、年・月・日 と別々に入力された値から、西暦を求めます
まず、ワークシートに、「昭和/平成」 を選択するためのリストを作成します。
リストは 「入力規制」 を使用して実装します。

「B2」 セルを選択後 メニューから、「データ」−「入力規制」 を選択します。
※ リストは B2 セルに作成します。
入力規制

リスト

「設定」 タブの 「入力値の種類」 で、
「リスト」 を選択し、

「元の値」 欄に 「S,H」 と入力し、
OK」 を押します。

※ 「S,H」 は、「昭和,平成」 の意味です。

リストを作成したセルの下に、「年」、「月」、「日」 用の枠を作成します。 「日」 セルの下に、以下の式を入力します。

=TEXT(B2&B3&"/"&B4&"/"&B5,"YYYY/MM/DD")

枠

B6 セルに式を入力後は、右のようになります。

※ これは 「S」 を選択した状態です。

試しに、「年・月・日」 (B3 〜 B5 セル) に適当な数字を入力してみます。
例

「S」、「60」、「4」、「1」 (S60/4/1) が、
「1985/04/01」 と変換されました。

≪注意≫
  • この例では、「昭和」 と 「平成」 しかありませんが、リストに 「M,T,S,H」 と入力することによって、「明治〜平成」 まで変換することができます。

  • ただし、明治33年より前は正しい結果が表示できません
    これは、Excle が日付を計算する処理として、 1900 年から開始しているからです。

  • オプション設定の変更により、1904 年 (明治37) より前が計算できない場合もあります。

  • 年号を 「昭和」・「平成」 のように漢字で表示したい場合は、B6 セルの式を以下のように変更する必要があります。

      =TEXT(B2&B3&""&B4&""&B5&"日","YYYY/MM/DD")

  • 1つのセルに、和暦で入力した場合 (例えば 「S60/4/1」) は、自動的に西暦に変換後保存されます。

  • 和暦で文字列として入力された日付を一括で西暦の日付に変換する方法は、こちらです。


この頁のTOPへTop
【念の為の注意書きです。】
このページ(下位ページ含む)の全ての物の無断転載を禁止いたします。
又、当ページ(下位ページ含む)に記載されていることは、全て自己の責任において実行してください。

Copyright(C) pPoy 2009-2010