• ベストアンサー

EXCELでの日付表示の方法

初心者ですみません。 EXCELで日付を表示する方法の質問です。 例えば、同一ブックの別のシートのあるセル(例えばB2)に6桁の日付の数字(例211229  和暦)が入力されているとして、その数値の下4桁のみを別のシートの例えばC2セルで12月29日と表示させるにはどうしたらよいのでしょうか? MODで6桁の数字を10000で割れば、余りとして1229が得られますが・・・。 よろしくお願いいたします。

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

  • ベストアンサー
noname#204879
noname#204879
回答No.3

211229 のような6桁の数値が Sheet1 のセル B2 に入力されていると仮定すれば、任意のセルに次の式を入力して、その下に示す書式を設定すればOKです。 式  =("H"&TEXT(Sheet1!B2,"00-00-00"))+0 書式 m"月"d"日"

sodamocles
質問者

お礼

早速の回答ありがとうございました。

その他の回答 (2)

  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.2

こんばんは! 色々方法はあるかと思いますが・・・ 一例です。 Sheet1のB2セルに6桁の数値が入力してあり、Sheet2のC2セルに表示させるとします。 シリアル値で表示するのが一番良い方法だと思いますので、 Sheet2のC2セルは =DATE(LEFT(Sheet1!B2,2)+1988,LEFT(RIGHT(Sheet1!B2,4),2),RIGHT(Sheet1!B2,2)) として、セルの表示形式で好みの日付にしてみてください。 尚、エラー処理はしていません。 以上、参考になれば幸いです。m(__)m

sodamocles
質問者

お礼

早速の回答ありがとうございます。ありがとうございました。

回答No.1

> MODで6桁の数字を10000で割れば、余りとして1229が それが判ってるなら、=int(mod(B2,10000)/100)が12になるし、 =mod(B2,100)が29というわけで、 =date(1988+int(B2/10000),int(mod(B2,10000)/100),mod(B2,100)) で完璧な日付シリアル値が得られます。書式をmm月dd日にすれば希 望通りの表示になりますね。 ただ、インチキ技で =text(B2,"平成##年##月##日")*1 というのもあります。これもチャンと日付シリアル値になるので、 書式を整えてください。

sodamocles
質問者

お礼

早速の回答ありがとうございます。ありがとうございました。