首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Excel VBA非工作日/周末天数

Excel VBA非工作日/周末天数是指使用Excel的Visual Basic for Applications(VBA)编程语言来计算给定日期范围内的非工作日或周末天数。VBA是一种用于自动化和定制Microsoft Office应用程序的编程语言。

在Excel中,非工作日通常指的是周末(即星期六和星期日),但也可以根据特定的工作日历进行自定义。通过使用VBA,可以编写代码来计算给定日期范围内的非工作日/周末天数,以便更好地管理和分析日期数据。

以下是一个示例VBA代码,用于计算给定日期范围内的非工作日/周末天数:

代码语言:txt
复制
Function CountNonWorkingDays(startDate As Date, endDate As Date) As Integer
    Dim count As Integer
    Dim currentDate As Date
    
    count = 0
    currentDate = startDate
    
    ' 循环遍历日期范围内的每一天
    Do While currentDate <= endDate
        ' 判断当前日期是否为周末(星期六或星期日)
        If Weekday(currentDate) = 1 Or Weekday(currentDate) = 7 Then
            count = count + 1
        End If
        
        ' 增加一天
        currentDate = currentDate + 1
    Loop
    
    CountNonWorkingDays = count
End Function

使用上述代码,可以在Excel中创建一个自定义函数(User-Defined Function),例如"CountNonWorkingDays"。然后,在Excel单元格中使用该函数来计算给定日期范围内的非工作日/周末天数,如下所示:

代码语言:txt
复制
=CountNonWorkingDays(A1, B1)

其中,A1和B1是包含起始日期和结束日期的单元格引用。

这样,Excel将根据VBA代码计算并返回给定日期范围内的非工作日/周末天数。

对于更复杂的需求,可以根据实际情况进行自定义修改。例如,可以考虑自定义工作日历,包括节假日和特殊休息日,并在代码中进行相应的判断和计算。

腾讯云提供了云计算相关的产品和服务,如云服务器、云数据库、云存储等,可以根据具体需求选择适合的产品。更多关于腾讯云的产品信息和介绍,可以访问腾讯云官方网站:https://cloud.tencent.com/

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

盘一盘 Python 特别篇 19 - 天数计数|年限

在金融产品估值时,细节最多的就是如何生成日期和年限了,最核心的细节如下: 支付日通常不会落在周末和公共假期上,如落到,那么根据“顺延”或“修正顺延”到后一个工作日,或者“提前”或“修正提前”到前一个工作日...工作日惯例就是通过一些不同规定把一个工作日调整到一个工作日 (周末且非公众假期) 上。 1. 提前 (preceding) 提前惯例是将工作日调整成其前一天工作日。...修正提前 (modified preceding) 修正提前惯例将工作日调整成其前一天工作日,但是如果这个工作日落在上个月,那么将工作日调整成后其一天工作日。...修正顺延 (modified following) 修正顺延惯例将工作日调整成其后一天工作日,但是如果这个工作日落在下个月,那么将工作日调整成其前一天工作日。...Act/Act 这两个惯例来自 2006 年 ISDA 文件里面的 4.16(b),计算年限方法为“闰年里天数/365 + 闰年里天数/366”。这里的天数计算包括起始日不包括结束日。

1.4K20

你需要的Excel常用函数都在这里!

Excel常用函数包括逻辑函数、数学函数、文本函数、统计函数、日期函数,熟练并运用好函数,能够让复杂的问题简单化,可以做到批处理,加快处理各种统计、计算类工作。 下面就来一起学习吧。建议收藏!...否则COUNTIF函数 可能返回预期的值。尝试使用CLEAN函数或者TRIM函数。...工作日不包括周末和专门指定的假日。在计算发票到期日、预期交货时间或工作天数时,可以使用函数 WORKDAY 来扣除周末或假日。 start_date 必需。开始日期。 days 必需。...start_date之前或之后不含周末及节假日的天数。 days 为正值将生成未来日期;为负值生成过去日期。 holidays 可选。...months为正值将生成未来日期;为负值将生成过去日期 例:计算日期 判断是否是周末 =IF(WEEKDAY(A2,2)>5,"周末","否") 第n个工作日的日期 =WORKDAY(D2,E2,D5

3.9K31

新研究结论:周末多睡2小时,抑郁风险降低48%

为了研究“周末补觉”和“抑郁”之间的关系,研究团队招募了5500名志愿者做跟踪调查。 这些志愿者在工作日期间,或多或少都会面临失眠问题的困扰。...其中,“每周平均睡眠时间”是根据以下两个问题进行评估的: 平均而言,你在工作日的什么时候入睡,什么时候醒来? 平均而言,你在周末的什么时候入睡,什么时候醒来?...具体计算公式为: [(工作日睡眠时间 x 5) + (周末睡眠时间x 2)]/ 7 “时间类型”是是基于周末的中间睡眠时间,并通过工作日积累的睡眠债务(sleep debt)进行修正,所用到的计算方法为...同样是来自韩国的另一项研究表明: 周末补觉对缓解酒精性脂肪肝也有益处。 既然如此,那是否就意味着周末“多补觉”,就是好事呢? 非也,非也。 这项研究虽然得出了周末补觉能降低郁抑症风险。...87%92%E8%A7%89%E8%83%BD%E9%99%8D%E4%BD%8E%E6%8A%91%E9%83%81%E9%A3%8E%E9%99%A9%23&Refer=top - END - 对比Excel

26810

数据分析师避不开的问题:如何体系化地开发报表?

(中) 《七天数据可视化之旅》第四天:数据图表的选择(下) 《七天数据可视化之旅》第五天:常用图表对比 《七天数据可视化之旅》第六天:提升可视化效果的Tips 《七天数据可视化之旅》第七天:可视化设计实战...某业务主要在PC端开展,周末的时候访客流量会大幅下降,但是周末流量相对于工作日的流量比例相对稳定,但是最近两个周末的数据出现了问题——虽然访客数同比或者环比都有提升,不过周末的活跃量比例下降了,如下图所示...,如果周末的活跃量相对于工作日的比例不变,则应该是橙色的“预期”值,为什么周末的“相对活跃度”比之前更低了呢?...是工作日的运营的广度和力度加大了么?还是调整了工作日周末的运营节奏?或者周末的流量跑到“需求替代场景”了?...关于建表需要说明几点: 区分维度、指标,数据表要有好的扩展性,维度上的颗粒度要足够细,如果你设计的中间表结构不能用Excel透视表来进行各种翻转操作及衍生各种次级指标,那么表结构的扩展性就可能还有问题;

1.5K21

Java设计模式(八)外观模式

因为我要考虑他是否正常打卡,是否是周末,是否是法定假期,没有正常打卡的话是否请假,是否补卡,针对请假类型,迟到早退等等情况,计算他所扣的分数。...首先是我考勤功能的接口定义,接口有两个方法,一个是工作日的计算一个出勤天数的计算 interface Attence { //工作日 void getWorkDay(); //...出勤天数 void getRealWorkDay(int userID); } 在我的考勤功能中,有一般员工和特殊员工,他们的工作日的计算方法是不同的,但是出勤天数这个方法计算是相同的,我们让两种员工都去实现这个出勤天数就显得繁琐了...XX天"); } } 这个抽象方法中,保留了工作日的计算,实现了出勤天数的计算,那我们就来具体实现两种员工了: //一般工作人员打卡 class Card extends AbstractAttence...这个接口应该提供获取两种员工工作日,已经人员出勤天数的数据。

64520

Excel数据处理你是选择Vba还是Python?当然是选pandas!

前言 本号之前已经分享过关于如何使用 Python 中的数据处理分析包 pandas 处理 Excel 的数据,本文继续分享一个小案例,此案例源于上周末帮朋友做的一个需求,并且是以 vba 编写解决...的方案简短分析 本文的核心不是 vba ,因此这里只做简单的讲解,如果你是 vba 用户,可以获取源码查看。...的高级用户,可能会觉得直接使用 字典+数组 的方式即可完成,但注意,直接 字典+数组 方式会导致代码难以维护 Python 的方案 上面说的 vba 方案,我大概花费了接近1小时的时间(vba...凡是文本类型的内容,统一用 first ,就是去组内的第一笔 接着定义加载 excel 数据到 DataFrame: - 由于数据源的标题在第3行,因此在调用 read_excel 时,参数 header...,注意追加模式需要设置参数 engine='openpyxl' vba 使用总结如下: - 如一次性代码,请面向领域设计代码(如本文例子),而非面向数据设计代码

3.4K30

被问了无数次!6个日期时间常见问题总结 | Power Query实战

Power Query里怎么计算两个日期的间隔天数,如果两个日期是标准格式的话,可以直接相减。...如果希望得到天数的结果,可以直接转换数据格式,比如: 如果希望直接计算天数,你可以直接用函数Duration.TotalDays进行转换,如下图所示: 三、如何把时间自动加上6小时 Power Query...由于PQ里没有类似Excel中的Datedif函数,因此,在PQ中计算常用的间隔天数、年数(年龄),跟在Excel里有所不同——稍微繁琐一点儿,要按照最原始的通过日期计算的方法来求解,但理解了其实也不难...经常有朋友问怎么计算两个日期间的工作日问题,本来,对于简单的计数问题,总不会复杂到什么程度,但是,对于这个问题,我通常会说,先确定你的工作日历表,也就是说,先定义好哪些算工作日,哪些算假期——因为每个公司都不一样...即反正周一到周五就是工作日,周六周日就是休息日,这种情况下,如果用Excel直接解,一个函数搞定: 然鹅,PQ里没有这样的函数,那该怎么办?——一句话,回归自然:选出周一到周五的日期,然后计数!

5.5K20

共享单车数据处理与分析

%100==0,:] df_shared_bakes_data_used.info() 输出为: 对比7天内每天的用户总量,分析工作日周末的使用量是否存在差异 #2017-05-10是星期三...分别比较工作日周末的使用量,整体趋势为稳步增长趋势 工作日周末(13,14日)的使用量更多 #工作日周末(13,14日)的使用量更多 bar_used_by_date=(Bar() ....1%进行统计"}) ) bar_used_by_date.render_notebook() 输出为: #工作日平均每天的使用量占比约为54.23%,周末平均每天使用量占比45.77%...,中午12点有一个小峰值,说明工作日的单车使用时间符合通勤高峰时间规律,工作日的使用场景以通勤为主,还伴有部分午餐时间的使用 周末在8点至21点区间内使用量平缓分布,中午11至12点、晚5点至7点各有一个小高峰...,说明周末的单车使用时间与午餐、晚餐时间相关,即周末的使用场景以休闲、聚餐为主 结合前述单日总使用量的对比,通勤需求产生的使用量更大,可能产生潮汐现象(后续具体分析) 可以选择工作日高峰时段或周末进行单车维修

1.9K20

Excel编程周末速成班第22课:使用事件

一种方式是根据接收事件的对象来组织事件,如下所示: 应用程序事件 工作簿事件 工作表事件 用户窗体和控件事件 对象事件 对象事件是一个特殊类别,其中包含不与特定对象关联的事件。...有三类事件: 事件始终是用户操作的结果,例如单击用户窗体上的控件或按某个键 用户操作或VBA代码可能引起的事件,例如打开工作簿或激活图表 与用户操作无关的事件,例如一天中的特定时间的发生 总体而言,Excel...事件处理程序是一种特殊的VBA过程,当相关事件发生时会自动执行。命名这些过程时必须遵守严格的规则;名称必须采用objectname_eventname的形式。...在大多数情况下,VBA编辑器会为你创建事件过程的框架(第一行和最后一行)。打开代码编辑窗口后,该窗口顶部将显示两个下拉列表(参见图22-1)。...注:本文是在知识星球App的完美Excel社群中发表的Excel VBA编程系列文章《Excel编程周末速成班第22课:使用事件》中的一部分内容。

2.8K10

基于基站定位的商圈分析

但是工作区在工作日也有人流大,人流时间长的特点,经过分析,选取工作日人均停留时间,周末人均停留时间,凌晨人均停留时间,日均人流能量几个特征进行建模和分析。...」、「凌晨人均停留时间」、「周末人均停留时间」、「日均人流量」,图的标题是商圈类别1、2、3。...从这三张图分析可知: - 「商圈类别1」:工作日人均停留时间、凌晨人均停留时间都很低,周末人均停留时间中等,日人均流量很高。比较符合商业区。...- 「商圈类别2」:工作日人均停留时间中等、凌晨和周末人均停留时间很长,日均人流量很低。比较符合居住区。...- 「商圈类型3」:工作日人均停留时间很长,凌晨和周末停留时间较少,日均人流量中等。比较符合办公区。

68120

Excel小技巧68:记忆式键入助你快速完成数据输入

学习Excel技术,关注微信公众号: excelperfect 通常,Excel默认启用了记忆式键入功能,如下图1所示,在“Excel选项”对话框的“高级”选项卡中,默认勾选了“为单元格值启用记忆式键入...如下图3所示,在单元格中单击鼠标右键,从快捷菜单中选择“从下拉列表中选择”命令,Excel会显示已输入的数据的下拉列表,你从中选择想要输入该单元格中的数据即可。 ?...图3 其实,还有一种更快捷的方式,就是选择要输入的单元格后,按Alt+向下箭头键,Excel会显示包含已输入数据的下拉列表,如下图4所示。 ?...欢迎到知识星球:完美Excel社群,进行技术交流和提问,获取更多电子资料。...完美Excel社群2020.11.18动态 #VBA# Excel编程周末速成班第13课:使用Excel内置函数编程 主要内容:在VBA代码中使用Excel函数;Excel函数概述;WorksheetFunction

2.9K10
领券