ログインしてさらにmixiを楽しもう

コメントを投稿して情報交換!
更新通知を受け取って、最新情報をゲット!

Excel(エクセル)活用コミュの生年月日

  • mixiチェック
  • このエントリーをはてなブックマークに追加
エクセル初心者です


一つのセルに
20080209と入力して、書式のユーザー設定で設定すれば和暦で平成20年2月9日と表示できるんですが

2008の箇所に1=明治・2=大正・3=昭和・4=平成という入力も可能にするにはどうすればいいですか?
4200209、20080209どちらを入力しても平成20年2月9日と表示させたいのですがそんなことはできるのでしょうか?
ユーザー設定でしょうか?それとも関数を用いた方がいいのでしょうか?


ご存知でしたら方法を教えて下さい顔(願)

コメント(18)

>2008の箇所に1=明治・2=大正・3=昭和・4=平成という入力も可能にするにはどうすればいいですか?
M,T,S,Hではだめなんですか?

それと、年月日はスラッシュで区切った方がいいんじゃないかと思いますけど。
「h20/2/9」とか「2008/2/9」とかですね。
ちなみに「8/2/9」や「2/9」だけでもOKです。


ついでに、[Ctrl]+[;]で当日の日付になります。
すいません顔(願)私の説明不足ですあせあせ(飛び散る汗)
実は成績表を作成してます。
で成績と年齢から順位を出さなきゃいけなくて。
成績を提出してくる人達が書いてもってくる用紙には生年月日が個々に西暦や和暦で書いてあるのです

西暦だけなら出せたんですけど、和暦で提出してきた分に対応できません…あせあせ(飛び散る汗)

何かいい方法はないでしょうか?
要するに、西暦でも和暦でも統一して日付順にソートしたいということでしたら…

・入力する段階では、元データに合わせて西暦・和暦のいずれかで入力
・後で全部のセルに表示形式を設定して、好みの形式に設定して統一
・並べ替えはシリアル値で行うので、表示形式には影響しないはず

ということで OK なんじゃないでしょうか。
入力する際には、西暦でも和暦でも、日付の書式に適った内容なら、ちゃんと認識するはずですから。たとえば「平成20年2月9日」と入力すると、数式バーでは「2008/2/9」となるでしょう?
>ゆぅさん
とりあえず、こちらのページを一通り読んでみてください。

日付の入力 面倒なことしてませんか?
http://kokoro.kir.jp/excel/input_day.html

「20080209」という日付の入力の仕方はExcelではイレギュラーですので、
なるべくやらない方がいいです。あとあと処理が面倒になるので。
ゆぅさんの抱えている仕事内容は、つまり、
相手が2008から始まる数字を見た瞬間に、
=平成20年
だと計算しなくてはならない業務だということですね。

しかも、年/月/日ごとにセルを分けて入力すると、
十字キーなどで移動しなくてはならず、残業するハメになってしまうということですね。

それならば、
セルA1に 20080209という形式の値か、4200209の値の、どちらの場合でも和暦で表示させるためには、 

=IF(LEN(A1)=7, DATE( MID(A1,2,2)+CHOOSE(LEFT(A1,1),1867,1911,1925,1988), MID(A1,4,2),RIGHT(A1,2)), DATE(LEFT(A1,4),MID(A1,5,2),RIGHT(A1,2)))
と入力し、さらにこのセルにユーザー設定の表示形式、

[$-411]ggge"年"m"月"d"日"

と入力すればできます。
かなり複雑ですが。
コメントを戴いたみなさん、ありがとうございますほっとした顔

虎次さん手(パー)
MTSHで入力したら両方できました拍手
1234では無理なんでしょうかねあせあせ(飛び散る汗)
サイトも見ましたバンザイ日付と認識させるには“/”が基本なんですねほっとした顔勉強になりますえんぴつ

1÷0さん手(パー)
1980年で式を入れてみたんですが、平成941年となってしまいましたあせあせ(飛び散る汗)
いろんな関数が入っているので初心者の私には真似できませんが、理解するのが楽しみでするんるん
ちなみに“CHOOSE”なんて初めて見ましたふらふら

ゆぅさん

 難解なものにも、試してみる&理解したいと思う意識が素晴らしいですね。


>1980年で式を入れてみたんですが、平成941年となってしまいました
 数式の中の数字を変えてしまったのでしょうか????

IF(LEN(A1)=7, DATE( MID(A1,2,2)+CHOOSE(LEFT(A1,1),1867,1911,1925,1988), MID(A1,4,2),RIGHT(A1,2)), DATE(LEFT(A1,4),MID(A1,5,2),RIGHT(A1,2)))

という数式の中に、「1867」「1911」「1925」「1988」という数字がありますけれど、これらを変更する必要はありません。
1980年を表したいのなら、セルA1に、「19800210」と入れるだけで自動的に「昭和55年2月10日と表示されるはずです。
1867以後4個の数字は年号が変わった年ということで理解していいんですよねバンザイ電球
ん〜たらーっ(汗)数字はそのまま当てはめてるはずなんですけど冷や汗
休憩が終わるのでもう一回見直してみますねほっとした顔

1÷0さんはいろんな関数を知ってるんですね拍手同僚が驚いてましたほっとした顔
>1234では無理なんでしょうかね
可能か不可能かでいえば、面倒ですが可能でしょう。
ですが、元号を数字で峻別しようとすると、
年数の数字と混同してしまう可能性がでてきてしまい入力ミスを誘発しかねません。

元号の場合はMTSH込みで、西暦の場合は数字のみで、と統一したほうが、
間違いが少なくてすみますよ。
解説しても誰もみないと思い、敢えて解説しなかったのですが、興味がある人もいそうなんで解説してみます。
IF,LEN,DATE,CHOOSE,MID,RIGHT,LEFTの7つの関数から成り立っているので、1日ひとつの関数の使い方を覚えていけば、7日で理解できるかもしれません。
すべてが理解できなかったとしても、1つでも多くの関数が使えるようになれば他の仕事に役立つでしょう。
くわしい関数の勉強はエクセルのヘルプ機能で調べるのがいいと思います。

[解説]
「4200209」という7文字だったらこうなる、「20080209」という8文字だったらああなるという風に分けなくてはいけません。
「だったら」は英語で「IF」なので、まずIF関数を使います。

=IF(あ,い,う)
 あ…a1が7文字だったら、
 い…a1が和暦で入力だが、
 う…さもなければ洋暦で入力

あ…文字の長さ(英語でLENGTH)を判定するためにLEN関数を使います

い…日付(英語でDATE)を定めるため、DATE(年,月,日)関数を使います
 年は7文字の数字のうち、2・3番目の数字と関わりがあります。
 まず2・3番目という中間(MIDDLE)の数字を取り出すために、MID関数を使います。
 平成か昭和かを決めるのはa1の一番左(LEFT)の文字だから、LEFT関数を使って判定します。
 例えば平成20年を2008年に直すためには、20 + 1988 = 2008だから1988を足さなくてはなりません。
 それぞれの場合を選ぶ(CHOOSE)ために、CHOOSE(何番目,1番目,2番目,3番目,4番目)関数を使います。
  次に、月を求めたいのですが、これは4・5文字目に当たるので、中間(MID)関数を使います。
   最後に日を求めるために、a1の一番右(RIGHT)の2文字をRIGHT(文字,2)関数を使います。

う…日付を求めるため、DATE(年,月,日)を使います。
 年は左の方の文字なのでLEFT関数
 月は真ん中の文字なのでMID関数
 日は右の文字なのでRIGHT関数
虎次さん手(パー)
そのようですねあっかんべー 親切に教えて戴きありがとうございますわーい(嬉しい顔)

1÷0さん手(パー)
=IF(LEN(H50)=7,DATE(MID(H50,2,2)+CHOOSE(LEFT(H50,1),1867,1911,1925,1988),MID(H50,4,2),RIGHT(H50,2)),DATE(LEFT(H50,4),MID(H50,5,2),RIGHT(H50,2)))

でいいですか?
親切に解説までして戴いてありがとうございますわーい(嬉しい顔) 自分でも調べてみますわーい(嬉しい顔)

kusakabeさん手(パー)
同僚が驚いたのは私では確実に作れない関数を作っていたことにたいしてですあせあせ(飛び散る汗) またまたコメント不足でしたあせあせ(飛び散る汗)ごめんなさい。

ログインすると、残り7件のコメントが見れるよ

mixiユーザー
ログインしてコメントしよう!

Excel(エクセル)活用 更新情報

Excel(エクセル)活用のメンバーはこんなコミュニティにも参加しています

星印の数は、共通して参加しているメンバーが多いほど増えます。