首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >只计算9-5小时前的x小时数。

只计算9-5小时前的x小时数。
EN

Stack Overflow用户
提问于 2016-11-23 21:28:19
回答 1查看 33关注 0票数 0

我试着得到一些预先确定的值,16和40的一个快速的ETA。例如,我需要我的代码来快速计算一个项目上的ETA,如果它需要16个小时,但是每天只计算9-5 (8)个小时。显然,我需要包括当天剩下的时间,这是我在下面的代码片段中看到的。然而,我给自己一个经常疼痛的想法,试图找出最好的方式继续进行代码。也许有人有个好主意?

代码语言:javascript
运行
复制
Dim TargetTime as Integer = 16
Dim currentHr As Integer = current.Hour
Dim TodaysRemainingHours As Integer = 0

If currentHr >= 9 AndAlso currentHr < 17 Then
    'Count remaining hours
    TodaysRemainingHours = (17- currentHr)
Else
    'Dont count today
    TodaysRemainingHours = 0
End If

我的计划是:

  • TargetTime -- TodaysRemainingHours --给出要计数的值。
  • 不知何故,计算时间是基于9-5时间跨度的。
  • lblOutput显示为:"ETA: 2016年11月25日下午2点“

正如你所看到的,我知道如何得到我需要数到的金库,但我需要一些帮助,首先只计算每天9-5小时的时间,然后返回实际估计的小时数。这不是为了任何盈利,这是一个个人的ETA计划。

EN

回答 1

Stack Overflow用户

发布于 2016-11-23 22:37:50

谢谢你的点评,你的评论帮我解决了问题!下面的代码似乎适用于我,我还没有发现任何问题。如果时间也超过了下午5时,我必须确保没有计算当前一天剩下的几个小时。谢谢。

代码语言:javascript
运行
复制
        Dim TargetTime As Integer = 16
        Dim current As Datetime = DateTime.now 
        Dim currentHr As Integer = current.Hour
        Dim TodaysRemainingHours As Integer = 0

        If currentHr >= 9 AndAlso currentHr < 17 Then
            'Count remaining hours
            TodaysRemainingHours = (17 - currentHr)
        Else
            'Dont count today
            TodaysRemainingHours = 0
       End If

        If currentHr >= 9 AndAlso currentHr < 17 Then
        'Deduct todays hours from target time.
        TargetTime = (TargetTime - TodaysRemainingHours)
            'Display results
            MsgBox("ETA: " & Now.AddDays(TargetTime / 8))
            Else 
        'Skip todays hours and count from tomorrow morning at 9am
           Dim Tomorrow As  DateTime  = Today.AddDays(1)
           Dim TomorrowMorning As TimeSpan  = new TimeSpan(09, 00, 0)
            Tomorrow = Tomorrow.Date + TomorrowMorning
            'Display results
            MsgBox("ETA: " & Tomorrow.AddDays(TargetTime / 8))
            End If 
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40774438

复制
相关文章

相似问题

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