如何在Google电子表格中使用date添加function?

我相信我现在遇到的问题应该是在MS Excel中更容易。 不过,由于我的公司使用Google Spreadsheet,所以我必须找出一个办法。

基本上,我有一个单元格包含像“12/19/11”date值,我有另一个单元格包含一个值,如“DT 30”。 分配给我的任务是将值30(天)添加到date,所以结果应该是“2012年1月19日”。

我在Google电子表格中做了一些尝试,我有两个问题。 首先是如何从string“DT 30”中提取数字值“30”,第二个问题是,似乎没有build立在Google文档中的date添加function。

任何专家可以提供一些build议吗? 感谢您帮助初学者!

  1. 为了从string中提取一个数值,你可以使用这两个函数(假设你在单元格'A1'中有你的值):

    =VALUE(REGEXEXTRACT(A1, "\d+"))

    这会给你一个数值。

  2. 我在文档中找不到date添加function,但是您可以将date转换为内部date编号,然后添加天数(如果您的值位于单元格'A2'中):

    =DATEVALUE(A2) + 30

我希望这将有所帮助。

我喜欢保持简单。 如果A1保存date,B1保存要添加的月数,则

 =date(year(A1),month(A1)+B1,day(A1)) 

会计算所需的结果。 同样的方式可以使用几天或几年

您可以将数字添加到date的单元格。

所以如果A1: 12/3/2012A2: =A1+7则A2将显示12/10/2012

您可以使用DATE(年;月;日)在date进行操作:

例子:

 =DATE(2013;3;8 + 30) give the result... 7 april 2013 ! =DATE(2013;3 + 15; 8) give the result... 8 june 2014 ! 

这是非常令人惊讶的,但它的作品…

就像@ kidbrax的回答一样,你可以用+来添加日子。 为了得到这个工作,我必须明确地声明我的单元格数据是一个date:

 A1: =DATE(2014, 03, 28) A2: =A1+1 

A2的价值现在是2014年3月29日

直接使用EDATE(Start_date, months)做ADDDate的工作。 例:

考虑A1 = 20/08/2012A2 = 3

 =edate(A1; A2) 

将计算20/11/2012

PS:在我的例子中的dd/mm/yyyy格式

使用与Burnash使用的几乎相同的方法,为最终结果您可以使用…

 =regexextract(A1,"[0-9]+")+A2 

其中A1包含文本和数字的string,A2包含感兴趣的date

简单的添加和转换回来怎么了?

如果A1是date字段,并且A2保存要添加的天数:= TO_DATE((DATEVALUE(A1)+ A2)

=TO_DATE(TO_PURE_NUMBER(Insert Date cell, ie AM4) + [需要多less天添加数字,例如3天])

看起来在实践中:

 =TO_DATE(TO_PURE_NUMBER(AM4)+3) 

基本上,你将date转换成一个纯数字,并重新回到date。