dポイントプレゼントキャンペーン実施中!

タイトルのとおりなんですが、例えばどこかのセルに2003/1/1と入力します。
そして、別の表の中で日割り計算をしたいので、2003年1月なら「31」という数字を別のセルに持ってきたいんです。
こんなことってできますか?

A 回答 (3件)

関数を使えば出来ると思います。


月の日数=(翌月の初日)-1と考え、

A1に2003/1/1が入っているとします。
日数を表示したいセルに、

=DAY(DATE(YEAR(A1),MONTH(A1)+1,1)-1)

で、できると思います。
    • good
    • 3
この回答へのお礼

ありがとうございますっ。
できましたっ!

お礼日時:2003/01/30 13:01

EOMONTH関数を使えば可能かと思います。


例えばセルA1に「2003/1/1」と入っているとして、セルB1に「31」と表示させたい場合は、セルB2に「=EOMONTH(A1,0)」と入力します。
ただしEOMONTH関数を使用するには、メニューバーのツール-アドインの「分析ツール」にチェックが入っていないと使用できません。
    • good
    • 9
この回答へのお礼

ありがとうございました。
これも参考になりました。

お礼日時:2003/01/30 13:03

もし、年月日として取得されたいのならば、


2003/1/1が入力されているセルをA1と仮定しますと、

=DATEVALUE(YEAR(A1)&"/"&MONTH(A1)+1&"/"&1)-1

と言う数式でokですよ。これで2003/1/31となります。

考え方としては、A1から年と月を算出して、月は1を足します。そして日を1で固定します。これらを"/"を間に挟んで連結すると次月の1日(この場合2003/2/1)を文字として取得できます。後はこれをシリアル値(Excelでは日付を数値として管理しています)に変換してから1(日)引けば、必ずA1に入力された日付の月末になります。
    • good
    • 0
この回答へのお礼

ありがとうございます。
No.1の人とは意味が違うんですがわかりました。
ありがとうございます。

お礼日時:2003/01/30 13:02

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