[[20150319135403]] 『=IF(H10=』(しゅう) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『=IF(H10=』(しゅう)

H列の日付から30日経過した日付を有効期限(K列)として表示させるのですが
3/30以降のものは3/30と表示させたいです。

=IF(IF(H25="","",H25+60)>=3/30,3/30,IF(H25="","",H25+60)) と打つと「M33.1.0」と表示されます。

教えてください。よろしくお願いいたします。

< 使用 Excel:Excel2010、使用 OS:Windows7 >


 文書では30日後、式では60日後となっているがどちらだろうか?

 とりあえず30日後の場合は
 =IF(H25="","",MIN(H25+30,DATE(YEAR(H25),3,30)))
 もしくは
 =IF(H25="","",MIN(H25+30,DATE(YEAR(H25)+(TEXT(H25,"mmdd")>="0330"),3,30)))
 で、どうだろうか?

 前者はH列が3/30以降の場合でも有効期限を3/30とする。
 後者はH列が3/30以降の場合、翌年の3/30より前か後かを判断している。
 (何日後と指定する部分がもっと長い場合も考えてこのような式にしている)

 なお、60日後の場合は「A1+30」を「A1+60」としてくれ。

 しゅうさんの式の問題点としては「3/30」は「3÷30」と判断されることと日付データには年も含まれることがあげられる。

 日付を指定するのには「"3/30"*1」(この場合、年はシステム日付の年が使われる)や「DATE(年,3,30)」などとして見てくれ。
 (日付を示す方法はほかにもあり)
(ねむねむ) 2015/03/19(木) 14:18

 3/30 = 0.1
      = 1900年1月0日
      = 明治33年1月0日

30日経過した日付と言いながら、60日足しているのは何故でしょうね?
以下は、1ヶ月足す例。

=IF(H25="","",MIN(DATE(YEAR(H25),MONTH(H25)+1,DAY(H25)-1),DATE(YEAR(TODAY()),3,30)))
(???) 2015/03/19(木) 14:25


M33.1.0は書式設定で和暦の場合なのですが、和暦なのでしょうか?
(デイト) 2015/03/19(木) 14:28

あー、私の案だと、4月以降全て3/30になってしまうから、駄目かな。
TODAY() の箇所を H25 に変えれば、4月以降でもいけそうですが。
(???) 2015/03/19(木) 14:31

皆様ありがとうございます。

30日です。すみません。

参考にさせて頂きます。

(しゅう) 2015/03/19(木) 15:30


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.