AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / computer / 问题 / 1605128
Accepted
Curt
Curt
Asked: 2020-11-26 14:34:40 +0800 CST2020-11-26 14:34:40 +0800 CST 2020-11-26 14:34:40 +0800 CST

从 Excel 中的另一个日期和时间中减去一个日期和时间得到错误的结果

  • 772

我正在尝试在单元格格式自定义中减去日期/时间:mm/dd/yyyy hh:mm:ss AM/PM。从另一个时间以相同的格式。我已经尝试了很多网站关于如何做到这一点的想法,但没有一个例子展示了我希望如何做到这一点。已尝试使用 DATEDIF 公式、带有 TIMEVALUE 和 MINUTE(TIME(HOUR 等等的公式,但没有任何效果......所以假设 A1 = 11-25-2020 3:30:00 PM A2 = 09-16-2020 7:上午 30:00 和 A3 = SUM(A1-A2) = 00/03/10 08:00:00 A3 的格式为 yy/mm/dd hh:mm:ss

A1 转换为一般时 = 44160.64583 A2 转换为一般时 = 44090.3125 A3 转换为一般时 = 70.33333333 所以日期/时间到数字的转换看起来正确,数学看起来正确问题在于 A3 中数字到日期/时间的转换.

有谁知道这个问题的任何解决方案?

提前谢谢你

microsoft-excel date-time
  • 3 3 个回答
  • 377 Views

3 个回答

  • Voted
  1. Jeorje
    2020-11-26T17:03:58+08:002020-11-26T17:03:58+08:00

    在最终格式中很难看出您的目的,因此猜测不太可能是正确的。尽管如此,我会做出最好的猜测,并认为您的目的是将时间差异显示为当年的一部分,作为一年中的日期,给人一种与一年中的百分比不同的感觉. 所以我猜你在这个例子中想要的结果是“20/03/10 08:00:00”......

    您可以通过将 43830 添加到 A3 中的减法来实现。因此,经过的时间将相对于年初。您可以通过使用 DATEVALUE() 并向其传递一个构造字符串来查找当前年份并将“1/1/”连接到它,从而在未来证明这一点。

    (如果这不是想法,您需要编辑以“澄清”(即:提及您正在寻找的某种东西)。再过几个小时,即使在编辑之后也没有人会回答它也可能被投票关闭。)

    • 0
  2. Best Answer
    Ron Rosenfeld
    2020-11-30T06:06:15+08:002020-11-30T06:06:15+08:00

    当然,问题是年份和月份都没有固定的天数,因此需要单独计算差异。

    要将值输出为字符串,您可以尝试:

    =TEXT(DATEDIF(A2,A1,"y"),"[<>1]0 ""yrs,""; 0 ""yr,""")&
      TEXT(DATEDIF(A2,A1,"ym"),"[<>1] 0 ""months,""; 0 ""month,""") &
      TEXT(DATEDIF(A2,A1,"md")-(MOD(A2,1)>MOD(A1,1)),"[<>1] 0 ""days,"";0 ""day, """) &
      TEXT(HOUR(MOD(A1,1)-MOD(A2,1)+(MOD(A2,1)>MOD(A1,1))),"[<>1] 0 ""hrs,""; 0 ""hr,""") &
      TEXT(MINUTE(MOD(A1,1)-MOD(A2,1)+(MOD(A2,1)>MOD(A1,1))),"[<>1] 0 ""mins,""; 0 ""min""") &
      TEXT(SECOND(MOD(A1,1)-MOD(A2,1)+(MOD(A2,1)>MOD(A1,1))),"[<>1] 0 ""secs""; 0 ""sec""")
    

    请注意,我们使用布尔值(MOD(A2,1)>MOD(A1,1))来确定是否从日期和时间值中添加/减去一天,以说明结束时间在开始时间之前。

    在此处输入图像描述

    如果您想要不同的输出格式,那是可行的。但我会坚持输出为 * text,因为某些差异无法用日期格式表达;例如01-02-29( 1 yr, 2 months, 29 days),因为当年 2 月没有 29 天)。

    • 0
  3. Rajesh Sinha
    2020-11-26T23:31:31+08:002020-11-26T23:31:31+08:00

    由于您使用的是日期时间戳(日期和时间一起),那么您必须使用不同的方法。您不能使用该DATEVALUE函数,因为它将表示为文本的日期转换为正确的 Excel 日期。

    在此处输入图像描述

    • 如果您想获得年、月和日的差异,请在单元格 O5 中使用此公式:

      =DATEDIF(O3,O1,"Y") & " Years, " & DATEDIF(O3,O1,"YM") & " Months, " & DATEDIF(O3,O1,"MD") & " Days"
      
    • 要获得总天数公式在 O7 中:

      =-INT(O3-O1) & " Days"

    • 如果要计算总小时数,请在单元格 O9 中计算:

      =O1-O3

    • 单元格 O9 上的应用格式是[h]:mm:ss,其中将[h]数据评估为 24 小时时间。


    :编辑:

    通过评论 OP 已经透露,确切的需要是找到两个日期时间戳之间关于年、月、日和小时、分钟、秒的差异。

    为此,我想提出两个可能的公式。

    在此处输入图像描述

    • 单元格 O14 中的公式:

      =DATEDIF(O12,NOW(),"Y")&" Years, "&DATEDIF(O12,NOW(),"YM")&" Months, "&DATEDIF(O12,NOW(),"MD")&" Days,  "&TEXT(NOW()-O12,"h"" hrs ""m"" mins ""s"" secs""")
      
    • 单元格 O16 中的公式:

       =INT(NOW()-O12)&" days "&TEXT(NOW()-O12,"h"" hrs ""m"" mins ""s"" secs""")
      

    笔记:

    • 我使用NOW()了当前日期和时间的函数,它是可编辑的。

    • 记住函数NOW()是可变的,所以为了避免当前日期和时间的频繁变化,最好NOW()用任何CURRENT DATE & TIME值替换。

    根据需要调整公式中的单元格引用。

    • -1

相关问题

  • 带有“和”运算符的 Excel 数据透视表

  • 如何对整列使用 Excel 的 LENGTH 函数?

  • Excel 数组(2 个变量)

  • 如何从 WSL 打开 office 文件

  • VBA根据文件名重命名工作表

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    如何减少“vmmem”进程的消耗?

    • 11 个回答
  • Marko Smith

    从 Microsoft Stream 下载视频

    • 4 个回答
  • Marko Smith

    Google Chrome DevTools 无法解析 SourceMap:chrome-extension

    • 6 个回答
  • Marko Smith

    Windows 照片查看器因为内存不足而无法运行?

    • 5 个回答
  • Marko Smith

    支持结束后如何激活 WindowsXP?

    • 6 个回答
  • Marko Smith

    远程桌面间歇性冻结

    • 7 个回答
  • Marko Smith

    子网掩码 /32 是什么意思?

    • 6 个回答
  • Marko Smith

    鼠标指针在 Windows 中按下的箭头键上移动?

    • 1 个回答
  • Marko Smith

    VirtualBox 无法以 VERR_NEM_VM_CREATE_FAILED 启动

    • 8 个回答
  • Marko Smith

    应用程序不会出现在 MacBook 的摄像头和麦克风隐私设置中

    • 5 个回答
  • Martin Hope
    CiaranWelsh 如何减少“vmmem”进程的消耗? 2020-06-10 02:06:58 +0800 CST
  • Martin Hope
    Jim Windows 10 搜索未加载,显示空白窗口 2020-02-06 03:28:26 +0800 CST
  • Martin Hope
    v15 为什么通过电缆(同轴电缆)的千兆位/秒 Internet 连接不能像光纤一样提供对称速度? 2020-01-25 08:53:31 +0800 CST
  • Martin Hope
    fixer1234 “HTTPS Everywhere”仍然相关吗? 2019-10-27 18:06:25 +0800 CST
  • Martin Hope
    andre_ss6 远程桌面间歇性冻结 2019-09-11 12:56:40 +0800 CST
  • Martin Hope
    Riley Carney 为什么在 URL 后面加一个点会删除登录信息? 2019-08-06 10:59:24 +0800 CST
  • Martin Hope
    zdimension 鼠标指针在 Windows 中按下的箭头键上移动? 2019-08-04 06:39:57 +0800 CST
  • Martin Hope
    jonsca 我所有的 Firefox 附加组件突然被禁用了,我该如何重新启用它们? 2019-05-04 17:58:52 +0800 CST
  • Martin Hope
    MCK 是否可以使用文本创建二维码? 2019-04-02 06:32:14 +0800 CST
  • Martin Hope
    SoniEx2 更改 git init 默认分支名称 2019-04-01 06:16:56 +0800 CST

热门标签

windows-10 linux windows microsoft-excel networking ubuntu worksheet-function bash command-line hard-drive

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve