プロが教える店舗&オフィスのセキュリティ対策術

すみません・・・先程質問したものですが、先程の質問と関連した質問なのですがもしわかる方いらっしゃれば教えて頂けないでしょうか


EXCELで以下の画像のような表を作りたいです。

開始日と終了日を入力すると、その間の期間を2種類の方法で表示する。「●年●ヶ月」「●ヶ月」
次に、期間の合計を、上記の2種類の方法で表示する。「●年●ヶ月」「●ヶ月」

例えば、
A2・・・開始日 ※数値直接入力(入力例:2008/4/1)
B2・・・終了日 ※数値直接入力(入力例:2009/5/31)
C2・・・開始日と終了日の間の期間。表示方法は「●年●ヶ月」 ※計算式や関数などが入る
D2・・・開始日と終了日の間の期間。表示方法は「●ヶ月」 ※計算式や関数などが入る

更に、合計も計算したいので
C5・・・C2~C4までの合計。表示方法は「●年●ヶ月」 ※計算式や関数などが入る
D5・・・D2~D4までの合計。表示方法は「●ヶ月」 ※計算式や関数などが入る

という感じです。

※尚、画像ではD列に表示されてる期間がカッコ()で囲まれていますが、
ややこしければ、カッコ()なしの表示でもOKです。

説明がわかりにくかったらすみません・・・

尚、バージョンはEXCEL2007です。
よろしくお願いします。

「開始日と終了日を入力し、その間の期間を表」の質問画像

A 回答 (5件)

次の式を試してください。



(1)C2に「=IF(INT(D2/12)<>0,INT(D2/12)&"年","")&MOD(D2,12)&"ヶ月"」と入力し、C5までコピー
(2)D2に「=DATEDIF(A2,B2,"M")」と入力し、D4までコピー
(3)D5に「=SUM(D2:D4)」と入力
(4)D2からD5に、ユーザー書式「"("0"ヶ月)"」を設定
    • good
    • 0

前の質問がどれか書いてないが、あいまいな記憶ですが、前の質問では数字でデータをいれ、今回はEXCELの日付(==>直ちに日付シリアル値にEXCELが換算する)を入れるようで、内容が変わっているのでは。


ーー
合計(それも月数)を出すのなら、セルの値は、月数が入るようにしておいて、表示形式で好みに返られるなら、それを設定すべきだ。
だから=DATEDIF(A1,B1,"M")で13ヶ月と言う数を出す。しかしこの13(数としての13)を、1年1ヶ月と表示する表示形式はないから
年数を出す=DATEDIF(A1,B1,"Y")と1年未満の月数を捉える
=DATEDIF(A1,B1,"YM")を文字列結合して
=DATEDIF(A1,B1,"Y")&"年"&DATEDIF(A1,B1,"YM")& "月"
ーーー
これらを数字上の計算(1年の繰り下がり、繰り上がりでやる方法も
理論的には有るが、月末日の問題などあり難しいと思うのでDATEFDIF関数を使ったほうがよいだろう。
良く考えてみると時間は多数行の合計が可能で、かつ1日の繰上げが可能で、繰り上げないことも可能では有るが、年、月、日はそういうものがEXCELの仕組みにない。
750日のつもりで750を入れても、日付シリアル値としての750になり、すなわち1902・1・19日として扱うので、2年何日と表示形式で表示するすべはない。月も同じで、3月や3か月と入れたつもりが、1900/1/3に解釈される。
だから31ヶ月は数の合計でよいが、2年7か月は31を12で割った商とあまりでだすほかない。単位は表示形式では表示できないので
、文字列を組み合わせることになる。
    • good
    • 0

削除覚悟で。



回答してもらったものをそのまま入力しているだけのようですが、理解はしていますか?
関数の意味や使い方は調べましたか?

D列には単に数値が入っているだけです。
D2には 13 という数値が入っているだけです。
なので、単純にD2からD4までの合計を求めれば、31という数値が求まります。
あとは、表示形式を (31ヶ月) となるように設定するだけです。
回答を理解していたら、これくらいは解るはずです。

そして、月数から 何年何ヶ月 を求めるのは、前の回答にあったはずです。

自分で考えようとせずに、何でもかんでも聞きすぎですよ。
    • good
    • 0

一例ですが、D列に設定する計算式としては、・・・



=DATEDIF(A2,B2,"M")
=DATEDIF(A3,B3,"M")
=DATEDIF(A4,B4,"M")
  ※セルの書式設定は、ユーザ定義で、 (##"ヶ""月") で良いと思います。

 同様に、上記の DATEDIF 関数の M 部分を Y にすれば、年数表示
になるので、これを組み合わせて C列 を構成すれば良いと思います。

この回答への補足

ありがとうございます!

C2・・・=DATEDIF(A2,B2,"Y")&"年"&DATEDIF(A2,B2,"YM")&"ヶ月"
D2・・・=DATEDIF(A2,B2,"M")

と入力してみたらできました!


あと、C5とD5に入れる期間の合計なのですが、これはどうやればいいんでしょうか・・・

補足日時:2009/06/22 14:10
    • good
    • 0

「開始日と終了日の間の期間。

」の求め方について
説明がありませんね


2008/4/1~ 2009/5/31  は 13ヶ月
2008/4/1~ 2009/5/1  は 何ヶ月
2008/4/30~ 2009/5/31 は 何ヶ月
2008/4/30~ 2009/5/1  は 何ヶ月
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます!

>「開始日と終了日の間の期間。」の求め方について

C2には、=DATEDIF(A2,B2,"Y")&"年"&DATEDIF(A2,B2,"YM")&"ヶ月"
と入力し、
D2には=DATEDIF(A2,B2,"M")を入力したらなんとかできました

お礼日時:2009/06/22 14:12

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