2017-08-14 9 views
0

私は、年2回の日付が入力日付からどうなるかを判断するのに役立つテーブルをExcelで作成しています。Excel次の年を決定するための日付テーブル入力日から

例:契約の開始日が2011年9月1日で、終了日が2010年8月31日の場合、半年ごとの日付は2/28/18および18/31/2018になります。サービス期間は、契約期間の終了2ヶ月前、第2サービス日の6ヶ月前(したがって、それぞれ2020年6月30日および2031年12月31日)です。このため

式:A1は、1月を指し

=IF(ISBLANK(O3), "",IF(EOMONTH(A1, 0)=EOMONTH(O3, -2), "BIANNUAL", IF(EOMONTH(A1, 0)=EOMONTH(O3, -8), "BIANNUAL", ""))) 

は、B1は2月も、というようにスルー12月(L1)になります。 O3は、契約終了日のボックスであり、シート上で静的になります。この式は私にとって完璧に機能します。

私が得ようとしているのは、月(Jan-Dec)をリストするセルの先頭の数式です。 1月の場合は1/31/2018、2月の場合は2/28/2018、9月の場合は9/30/2017(9月が経過していないので今年)の日付を入力する式が必要です。実際の日はその月の最後の日でなければならず、その月が過ぎていれば、その年は来年の日でなければなりません。私はDATE関数を使って遊んでいますが、それを捨てることはできません。私がこれまで持って何

- 2018年1月:

=DATE(YEAR(TODAY()+365), MONTH(42766), DAY(EOMONTH(42766, 0))) 

これは動作しますが、それぞれの月が、私は月が経過した後にのみ変更する必要がある今年2018年になりません。

私は物事を複雑にしているように感じるか、もっと複雑な方法が必要です。助けてください。

+0

サンプルデータを提供できますか? A1の1月のようなことは、1月のテキスト、または、その月を表示するようにフォーマットされた日付を意味するのでしょうか?開始日と終了日に基づいてA1からL1を自動的に生成する数式を探していますか?ちょうどあなたが与えた説明で少し失われた。 –

答えて

0

私は実際にちょうどIF関数で遊ん今朝これを考え出しました。私の目標は、シートを開くたびに日付を変更することなく、シート自体を更新することでした。ファイルを他の人と共有できるように、契約日の最後に入力する必要があるのは、年2回、3年ごと、および四半期ごとです(画像参照)。

式:(私は年を心配する必要がなかったので、この場合は2017年1月31日に)私は月ごとにシリアルを使用

=IF(DATE(YEAR(TODAY()), MONTH(42766), DAY(EOMONTH(42766, 0)))<TODAY(), DATE(YEAR(TODAY()+365), MONTH(42766), DAY(EOMONTH(42766, 0))), DATE(YEAR(TODAY()), MONTH(42766), DAY(EOMONTH(42766, 0)))) 

Results

0
次の式A1の代わりに

とは、右L1にコピーするか、または限り、あなたが

=EOMONTH($O$2,COLUMN(A1)-1) 

を移動する必要がありますように、それは契約の開始月から始まり、1ずつ増加ヶ月の日付の末尾が表示されますあなたが右に移動する各列の月。

下の画像では、行1と行2とで同じ式です。行1私は日付ではなくカスタム形式を選択し、カスタム形式をmmmmに設定します。 4月はあなたに完全な月を与​​え、3mはあなたに月の3文字を渡します。

enter image description here

関連する問題