vb.net - 计算visual basic中两个日期之间的工作日数

我是一名 SQL 专家,但我需要一个函数来计算 VB.NET 中两个日期之间的工作日数。我不需要担心假期。不幸的是,我的尝试是徒劳的。非常感谢

这将进入 Reporting Service 2008 R2 中的自定义代码。

最佳答案

试试这个。我修改了我一直在使用的现有功能。这将在 SSRS 2008 中工作。请注意,您也可以用 C# 编写代码,如果您更习惯的话,在部署它之后,只需从报告中引用程序集。 1

public Shared Function Weekdays(ByRef startDate As Date,  ByRef endDate As Date   ) As integer
    dim numWeekdays as Integer
    dim totalDays as Integer
    dim WeekendDays as Integer
    numWeekdays = 0
    WeekendDays = 0

    totalDays = DateDiff(DateInterval.Day, startDate , endDate ) + 1

    for i as integer = 1 to totalDays

        if DatePart(dateinterval.weekday,startDate) = 1 then
            WeekendDays = WeekendDays + 1
        end if
        if DatePart(dateinterval.weekday, startDate) = 7 then
            WeekendDays = WeekendDays + 1
        end if
            startDate = DateAdd("d", 1, startDate)
    next

    numWeekdays  = totalDays - WeekendDays 

    return numWeekdays  
End Function 

https://stackoverflow.com/questions/6710296/

相关文章:

css - 当类名只是一个整数时,如何编写 CSS 选择器?

wix - 在 WIX 安装程序中检查 RAM

sql - oracle如何获取最新的员工记录?

objective-c - 使用 NSRegularExpression 将每个匹配项替换为方法的结

r - 安装 Rstem 包的问题

c# - 如何从列表框 C# 中删除选定的项目

perl - 如何在 Perl 中创建一个新文件?

c# - 每 2 分钟运行一次任务计划程序

python - 在 PYTHON 中使用 POUND SIGN 作为字符串?

php - 如何用PHP生成每月的天数?