Google sheets 如何利用谷歌电子表格中的日期添加功能?

Google sheets 如何利用谷歌电子表格中的日期添加功能?,google-sheets,formula,Google Sheets,Formula,我相信我现在遇到的问题在MS Excel中应该容易得多。然而,由于我的公司使用谷歌电子表格,所以我必须想出一个办法 基本上,我有一个单元格包含一个日期值,如“12/19/11”,还有一个单元格包含一个值,如“DT 30”。分配给我的任务是将值30(天)添加到日期,因此结果应为“2012年1月19日” 我在谷歌电子表格中做了一些尝试,我有两个问题。第一个问题是如何从字符串“dt30”中提取数字值“30”,第二个问题是,谷歌文档中似乎没有内置日期添加功能 有专家能提供一些建议吗 要从字符串中提取数值

我相信我现在遇到的问题在MS Excel中应该容易得多。然而,由于我的公司使用谷歌电子表格,所以我必须想出一个办法

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

我在谷歌电子表格中做了一些尝试,我有两个问题。第一个问题是如何从字符串“dt30”中提取数字值“30”,第二个问题是,谷歌文档中似乎没有内置日期添加功能

有专家能提供一些建议吗

  • 要从字符串中提取数值,可以使用以下两个函数(假设您的值位于单元格“A1”中):

    =值(REGEXEXTRACT(A1,“\d+”)

    这将得到一个数值

  • 我在文档中找不到日期添加功能,但您可以将日期转换为内部日期编号,然后添加天数(如果您的值在单元格“A2”中):

    =日期值(A2)+30


  • 我希望这会有所帮助。

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

    =regexextract(A1,"[0-9]+")+A2
    
    其中A1包含带有文本和数字的字符串
    A2包含感兴趣的日期

    直接使用EDATE(开始日期,月份)执行ADDDate的工作。 例如:

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

    =edate(A1; A2)
    
    将计算2012年11月20日


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

    您只需将数字与日期一起添加到单元格中即可

    因此,如果
    A1:12/3/2012
    A2:=A1+7
    则A2将显示12/10/2012

    您可以使用日期(年、月、日)对日期进行操作:

    示例:

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

    这很令人惊讶,但它很有效…

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

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

    将计算所需的结果。与kidbrax的答案相同,你可以使用
    +
    添加天数。为了实现这一点,我必须明确地将我的手机数据声明为日期:

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

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

    简单的添加和转换回有什么问题

    如果A1是日期字段,A2保留要添加的天数: =截止日期((日期值(A1)+A2)

    =截止日期(截止日期编号(插入日期单元格,即AM4)
    +[添加数字的天数,例如3天])

    在实践中看起来:

    =TO_DATE(TO_PURE_NUMBER(AM4)+3)
    
    本质上,您是在将日期转换为纯数字,然后再次转换为日期。

    在新的电子表格(美国地区)中,A1中的
    12/19/11
    和B1中的
    DT 30
    ,然后:

    =A1+right(B1,2)
    
    假设C1返回
    1/18/12


    作为字符串函数,RIGHT返回文本,但在添加时可以强制将其转换为数字。在向日期添加数字时,unity被视为一天。In(非常宽)限额、月份甚至年份都会自动调整。

    12/19/11加上30天是2012年1月18日。edate添加月份,而不是天数,Ooops…真的……对不起,我犯了错误……我曾在某些情况下使用过此功能,我需要添加月份,并在这里回答,但没有保留任何提示……感谢您阐明了聪明的方法。这是我唯一的解决方案即使允许您将月份添加到日期这也不是OP要求的。OP显然需要30天,而不是1个月,可以是28到31天。因此,此解决方案不可靠,并且在12月的一个月内无法工作。要将X个月添加到日期,请使用
    =EDATE(cell;months)
    ,例如
    =EDATE(A1;2)
    @Nowaker您的EDATE答案是我想要的,即使OP没有。谢谢!值得注意的是,单元格的格式必须是某种“日期”。如果设置为数字,您将得不到任何有意义的答案。不可靠的解决方案。若要添加X个月,请使用
    =EDATE(cell;months)
    ,例如
    =EDATE(A1;2)
    。为什么说这是一个不可靠的解决方案?关于的解释:DATE将自动重新计算超出有效月或日范围的数字日期。例如,DATE(1969,13,1)指定了非法的月13,将创建一个日期1/1/1970。类似地,DATE(1969,1,32),它指定不存在的1月32日,将创建一个日期为1969年2月1日。这只会给出一个错误:“函数ADD parameter 1需要数字值。但是'05.09.2019'是文本,不能强制为数字。”我尝试将其格式化为日期和日期时间。