首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在VBA中获取分钟时间

如何在VBA中获取分钟时间
EN

Stack Overflow用户
提问于 2018-06-21 04:03:29
回答 1查看 300关注 0票数 -2

我在VBA中存储了大量数据,然后将该文件导出到excel中。如果时间大于一个小时,我可以收集时间,但如果时间小于59分钟,我就无法收集时间。我正在使用类似的函数来计算时间差

  1. //获取时间diff 00:00

var

  1. = TIMEDIFF('00:00',$inspection_time);
  2. //为例,检查时间为12:00 00,结果应为0.5
  3. var rate =TIMEDIFF
EN

回答 1

Stack Overflow用户

发布于 2018-06-21 04:32:10

首先,TIMEDIFF是一个我没有立即找到文档的函数。

此外,时间/日期通常以天表示。

为了得到小时数,你可以将乘以24得到小时数(然后60代表分钟,等等),而不是除法。

使用现有函数

使用内置函数计算时间差的一种简单方法是使用DateDiff,它的签名为:

代码语言:javascript
复制
DateDiff( interval, date1, date2, [firstdayofweek], [firstweekofyear] )

有很多时间间隔供你选择,从一年到第二年不等。分钟是"n“。

例如:

代码语言:javascript
复制
DateDiff("n", "00:00", "12:00") '-> Result: 0.5

文档:msdn.microsoft.com/.../datediff-function

简单数学版

更简单的方法是直接减去:

代码语言:javascript
复制
abs(time2 - time1)

结果会在几天内出来。

编辑:

我鼓励你确保你的函数做你期望它们做的事情,而不仅仅是把一些可以工作的东西拼凑在一起,而是在进一步的更改中断时。这是一个糟糕的编码实践,你什么也学不到。

然而,为了给出响应,一种简单的间接方法可以获得最小的截止时间为一个小时,只需取您想要的最小值,将其与您的值进行比较,然后在两者中选择较大的值。

代码语言:javascript
复制
calculatedValue <- SomeNumber
cutoffValue <- 1/24
chosenValue <- MAX(calculatedValue, cutoffValue)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50956208

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档