显示即将到期的截止日期

时间:2015-10-19 16:28:30

标签: excel datetime excel-formula excel-2011

我正在使用Microsoft Excel for Mac 2011做一些个人理财,并尝试设计一个公式来显示特定日期。

我的信用卡账单将于每月24日到期。我在A栏中有名字,在B栏中有到期日。说当前月份是10月,账单将在24日到期,我希望它显示10/24/15(mm / dd /日)。我不想显示任何以前的日期或当前日期,我只想显示即将到期的截止日期,我希望它在2015年10月24日保持设置,直到2015年10月25日,它将显示下一个截止日期日期为11/24/15,即下个月。

我需要它来显示2015年9月25日至2015年10月24日的截止日期。然后在2015年10月25日我需要它来显示下一个截止日期。

3 个答案:

答案 0 :(得分:2)

UNTESTED。请尝试:

=IF(DAY(TODAY())<25,DATE(YEAR(TODAY()),MONTH(TODAY()),24),DATE(YEAR(TODAY()),MONTH(TODAY()+1),24))

答案 1 :(得分:1)

此解决方案假设如下:

  • Microsoft Excel for Mac 2011包含Excel函数EOMONTH
  • 应付帐款表位于B1:D6 (根据需要调整),包含以下字段(参见图1)

帐户:应付帐户的名称

到期日:付款到期的当月日

截止日期:下一个付款日期

C2中输入这两个公式中的任何一个并复制到最后一条记录

公式1:

=IF(DAY(TODAY())>$C3,
EOMONTH(TODAY(),0)+$C3,
EOMONTH(TODAY(),-1)+$C3)

公式2:

=EOMONTH(TODAY(),
IF(DAY(TODAY())>$C3,0,-1))
+$C3

enter image description here

答案 2 :(得分:0)

我想我明白了。对于我的例子,我的数据设置如下:

     A         B
1   Name    Due Date
2   Visa    10/24/2015

对于Cell B2,我有这个公式: =IF(DAY(TODAY())>=25,DATE(YEAR(TODAY()),MONTH(TODAY())+1,24),DATE(YEAR(TODAY()),MONTH(TODAY()),24))

我假设您将打开电子表格并想要月份更新为我们当前所在的月份(因此使用Today())。

编辑:将其分解 -

使用=today()将以默认格式返回今天的日期(非常确定它是您的默认格式,即mm / dd / yyyy)。因此,使用=Month(today())只会返回今天日期的 ...正如Year(today())day(today())将返回“今天的年份”和日期,如果是有道理。

If语句查看今天的数字日期是否大于或等于25.如果是,则返回今天的年份,今天的月份加一, 24日。如果今天不到25日,则返回今天的今年,今天的月份和当天的24日。

希望这有帮助!

edit2 - 一个更健壮的公式,允许您在账单到期的每个月保留一个单独的表date。从本质上讲,您只需使用24公式Vlookup替换"magic number" VLOOKUP(B3,$F$2:$G$4,2,FALSE)

以下是它的工作原理: enter image description here

而不是对公式中的24进行“硬编码”,而每次卡片更改时您必须更改(或者每个月的截止日期不同),您可以创建一个表来获取这些值。我的范围F2:G4显示哪个卡到期日期。 (即,VISA将于24日到期,因此在24日之后,将于下个月展示)。这样,您可以将该公式拖到“B”列中,并自动更新。 (看看我说AmEx如何在10日到期。但今天是19日,所以我们得到 11月 10日作为截止日期。)

因此,出于复制目的,新公式为=IF(DAY(TODAY())>VLOOKUP(B3,$F$2:$G$4,2,FALSE),DATE(YEAR(TODAY()),MONTH(TODAY())+1,VLOOKUP(B3,$F$2:$G$4,2,FALSE)),DATE(YEAR(TODAY()),MONTH(TODAY()),VLOOKUP(B3,$F$2:$G$4,2,FALSE)))。 (当然,您需要根据工作表的需要更改范围。)