アプリ版:「スタンプのみでお礼する」機能のリリースについて

1年5ヶ月といった年月の期間をエクセルで表示するためにはどのようにすればよろしいのでしょうか。

たとえば、1年1ヶ月と1年10ヶ月を数値として、打ち込むと、共に1.1になってしまいます。

ご教授のほどよろしくお願い致します。

A 回答 (4件)

こんにちは



1年1ヶ月は13ヶ月
1年10ヶ月は22ヶ月
ですね。

あるセルに
13と入れると、別のセルに1年1ヶ月
と表示される事は出来ますよ。

数値が入力されるセルをA1として、

=IF(MOD(A1,12)=0,INT(A1/12)&"年",IF(A1<12,A1&"ヶ月",INT(A1/12)&"年"&MOD(A1,12)&"ヶ月"))

をA1セル以外に入れて見てください。

A1に17と入れれば、1年5ヶ月
A1に13と入れれば、1年1ヶ月
A1に22と入れれば、1年10ヶ月

になります。
また、出力される数値も2バイト文字にしたいのであれば、

=JIS(IF(MOD(A1,12)=0,INT(A1/12)&"年",IF(A1<12,A1&"ヶ月",INT(A1/12)&"年"&MOD(A1,12)&"ヶ月")))

でいかがでしょうか?
    • good
    • 0
この回答へのお礼

ありがとうございます。
ばっちりです。

お礼日時:2003/08/25 21:12

A列A1に書式-セル-ユーザー定義をクリックし


0"年"00"月"と入れます。(年月の文字以外は半角)
A2以下にA1セルの書式を複写します。
110 --> 1年10月
1223 --> 12年23月
212 --> 2年12月
101 --> 1年01月
12 --> 0年12月
132 --> 1年32月
などとなります。
左のように数字を入れると、右のように表示されると言うことです。12ヶ月を越えるとかのチェックは入っていません。
これを数値らしく扱うには、別列に
=INT(A1/100)
=MOD(A1,100)
などで演算できるように考えないといけません。
    • good
    • 0
この回答へのお礼

グラフなどにして期間を表現することがないのであれば、この方法が一番効率的ですね。
ありがとうございます。

お礼日時:2003/08/25 21:14

ご質問の内容だけでは、どういった状況で期間の表示が必要なのかよく分からないのですが、2つの日付の間の期間を年月で表す場合には、DATEDIF関数を使うと便利です。



たとえばA1に開始日として「2002/5/3」を、A2に終了日として「2003/8/25」を入力してある場合、

=DATEDIF(A1,A2,"Y")&"年"&MOD(DATEDIF(A1,A2,"M"),12)&"ヶ月"

とすれば、「1年3ヶ月」と表示されます。
データとして保存しておいたり、他の箇所から参照する場合は月数として扱ったほうが容易ですので、その場合は、

=DATEDIF(A1,A2,"M")

とすれば「15」と表示されます。
(月数を年月形式で表示する方法は#1の方の回答が参考になると思います)

なお、必ず A1<A2 になるようにしてください。A2のほうが早い日付の場合、エラーになります。
    • good
    • 0
この回答へのお礼

ありがとうございます。ただ、DATEDIFは知ってました。

お礼日時:2003/08/25 21:13

すみません、No.1のarukamunです。



表示形式のユーザー定義でされているのでしょうか?
であれば、その定義の方法を補足してください。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています