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

Python生成中国节假日工作表,快速给数据库内生成工作日历

有时候,我们处理一些业务,比如:计算员工请假的时间工作日;就需要数据库内存在一张工作日历,记录调休和节假日。实际上,是有很多的公共接口。...因为需要一次性生成一年的工作日历,所以我们需要先获取一年的数据日期,之后遍历数据日期,使用LKI/chinese-calendar去解析每次的数据日期,将返回的结果包转为CSV或者拼接SQL。...(days=1)方法 ,获取一条的数值,并遍历累加即可。...# 初始化日期数组 while now 循环直到当前日期达到结束日期 days.append(now.strftime("%Y-%m-%d")) # 将当前日期以...其实是一件非常简单的事情,希望设计思路可以帮助到你。如果你也需要工作日历,那么你可以直接clone代码并运行即可。大家一般又是如何生成“工作日历”的呢?

82911

Power BI创建日期表的几种方式概览

今天给大家介绍三个创建Power BI日期表的途径,分别对应着一种语言,Excel中的VBA语言,适用于Power BI和PowerPivot的DAX语言,适用于Power BI和PowerQuery的...第一种是VBA语言: 直接用excel中的vba语言编写,通过添加简单的按钮可以实现一键创建日期表,并灵活修改起止日期。...这一段代码中并没有指定起止日期,这就是CALENDARAUTO函数的厉害之处,它可以自动检测模型中其他表中所有日期,然后生成涵盖这些日期的整年日期表。...首先创建两个参数,kaishiDate和jieshuDate来确定起始日期和结束日期,然后在查询编辑器中,新建一个空查询,打开高级编辑器,粘贴以下代码,回车即可。...], [ Description = "返回起止年份之间的日期表,并指定周二为每周的第一天,并使用英文显示名称。"

6.6K21
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    完美生成年度节假日表,Kettle还能这么玩!

    接下来我们开始熟悉了规则之后,就正式开始写JS代码 // 初始化日期 var initDate = "2019-01-01"; // 变量N 天(编号) var add = 1; // 设置日期的格式...; // 开始调用API // 因为调用有失败的风险,所以这里设置了循环,如果失败则重复执行 for (var i = 0; i < 5; i++) { //创建一个临时变量用来保存json...= null) { tmpInfo.append(str); } // 如果成功了,就结束循环 // 否则就重新遍历...基础的朋友我相信都能看懂 另外,由于需要根据日期获取到不同日期是否为国家节假日或者休息日,工作日等分类,因此调用了API来辅助完成 4....测试 我们在编译器中写好的JS代码,复制粘贴到我们Kettle的JS代码区组件中 就像我所展示的图一样 ?

    1.3K20

    Excel应用实践03:使用Excel进行个人计划执行记录与统计分析

    图4 在图4中,单元格C4是统计的起始日期,命名为startDate;单元格D4是统计的结束日期,命名为endDate,这是我们在这个工作表中唯一要输入的两个数值。...输入日期后,单击其右侧的“更新”按钮,自动统计这两个日期之间的相应数据。该按钮关联了下文所讲的用于实现自动统计的VBA程序。...当统计的次数不符合要求时,相应分类的字体会显示红色。 ? 图5 在VBA代码中,使用了高级筛选功能。...工作表“个人计划执行记录”的单元格区域J1:K2是条件区域,关联了工作表“计划执行统计”中输入的起始日期(startDate)和结束日期(endDate)。...图6 代码将筛选出的数据与分类(category)比较,计算相应分类上事项所花的时间及开展的次数,并输入工作表“计划执行统计”中的单元格区域C7:D21。

    1.9K20

    工作日两个日期之间的数

    近期遇到要求两个日期之间的工作日天数的问题。遂在网上找了下js的代码。參考了下别人的代码,发现写的都有些冗余,于是自己思考,进行了一下简单处理。主要是在循环处理上进行了精简。...对剩余天数的循环,也就能够考虑是对開始日期到剩余天数之间的处理,循环開始日期到剩余天数之间有多少个周六周日(最多仅仅有一个周六或者一个周日)。...因为当前開始日期在(0-6)之间,也就是当前開始日期的星期相应的数字加上剩余天数(0-6)的循环一定在(0-11)之间。所以0,7代表周日,6代表周六。...getWorkDays(){ var startDate = new Date(document.getElementById("startDate").value.replace(/-/g, "/")); //结束日期...4,5,6)0相应星期日 for(var i = 0;i 循环处理余下的天数有多少个周六或者周日(最多出现一个周六或者一个周日) if(((weekDay

    2.1K30

    如何将重复工作实现自动化?

    当然了以我自己和朋友的经历来看,VBA是我们职场的“硬核加分之技能,撩妹装逼之法宝,升职加薪之利器”。 3.如何使用VBA? (1)VBA怎么开启?...(2)VBA界面简介 点选「Visual Basic」 弹出以下界面 功能区:用于代码调试、执行、监控、粘贴等功能 代码编辑区域:编辑自己设计的代码 工程资源管理器:显示和管理不同的代码文件 属性区域...「类代码」和「窗体代码」大家了解即可,后面我们会逐步介绍。 前面的没看懂?没关系。你只需要记住,平常90%的都是写 “模块(标准代码)”就行了。 如何建立模块?...(3)VBA案例 案例1:自定义「日期季度转换函数」 上述的代码是自定义了一个「日期转换季度」函数,这个案例之前出现在实际的工作场景中,当然了这个公式是简化版的。...(2)VBA程序的文件后缀为“.xlsm” (3)别看上面的VBA代码,密密麻麻,其实没那么复杂。1个仅学习1周的同学都可以做出,那么实用又好看的分析表格。我觉得,你一定也可以。

    2.9K10

    如何将重复工作实现自动化?

    当然了以我自己和朋友的经历来看,VBA是我们职场的“硬核加分之技能,撩妹装逼之法宝,升职加薪之利器”。 3.如何使用VBA? (1)VBA怎么开启?...(2)VBA界面简介 点选「Visual Basic」 弹出以下界面 功能区:用于代码调试、执行、监控、粘贴等功能 代码编辑区域:编辑自己设计的代码 工程资源管理器:显示和管理不同的代码文件 属性区域...「类代码」和「窗体代码」大家了解即可,后面我们会逐步介绍。 前面的没看懂?没关系。你只需要记住,平常90%的都是写 “模块(标准代码)”就行了。 如何建立模块?...(3)VBA案例 案例1:自定义「日期季度转换函数」 上述的代码是自定义了一个「日期转换季度」函数,这个案例之前出现在实际的工作场景中,当然了这个公式是简化版的。...(2)VBA程序的文件后缀为“.xlsm” (3)别看上面的VBA代码,密密麻麻,其实没那么复杂。1个仅学习1周的同学都可以做出,那么实用又好看的分析表格。我觉得,你一定也可以。

    26230

    Java基础中的基础—- Java语法必背规律

    周六 7 switch 10、计算某个程序运行时间: //1、记录程序开始前的毫秒值 //2、开始运行程序 //3、记录程序结束后的毫秒值 //4、运行时间 = 结束后-开始前...相当于方法A把数据复制了一份传递给方法B,方法A和B各操作各自的数据 引用数据类型作为参数和返回值:传递地址值。...起始索引+=切割长度; 合并步骤: 1、查找并获取要合并的碎片文件集合 2、按指定顺序遍历碎片文件集合 【难点】 3、遍历一个碎片文件,就变为字节数组,追加写入合并文件...遍历结束,文件合并结束 合并三要素: ①确保获取的文件集合正确 ②确保碎片是按指定顺序遍历 ③确保是追加方式写入合并文件 合并示例代码:...,主要看当前try…catch…finally中是否有执行throws或return 若出现,则无法执行finally外的代码,因为方法被结束了 7、继承中的异常抛出和返回值类型 子类抛出异常/子类返回值类型

    78220

    一小时搞定 简单VBA编程 Excel宏编程快速扫盲

    Excel VBA编辑界面 (进入路径: sheet名称 –> 鼠标右键菜单 –> 查看代码) 2....输入代码方法: 在VBE编辑器的代码模块中输入VBA代码,通常有以下几种方法: ■ 手工键盘输入; ■ 使用宏录制器,即选择菜单“工具——宏——录制新宏”命令,将所进行的操作自动录制成宏代码; ■...复制/粘贴代码,即将现有的代码复制后,粘贴到相应的代码模块中; ■ 导入代码模块:文件–>导入文件 **不用的模块可以:文件–>移出模块 3....").End(xlUp).Row + 1, 1) #赋值所有内容到以结束内容空一行开始的表格中 Next #且套循环体结束 WbN = WbN & Chr(13)...把一个workBook的一块表格拷贝到另一个WorkBook中的一般化方法: 上面的代码中是一种简单的实现:拷贝所有内容到空行区域 需要将拷贝的内容和粘贴的位置控制更加精准控制: 拷贝指定位置到指定位置

    1.7K31

    Java基础必背规律

    周六 7 switch 10、计算某个程序运行时间: //1、记录程序开始前的毫秒值 //2、开始运行程序 //3、记录程序结束后的毫秒值 //4、运行时间 = 结束后-开始前...相当于方法A把数据复制了一份传递给方法B,方法A和B各操作各自的数据 引用数据类型作为参数和返回值:传递地址值。...起始索引+=切割长度; 合并步骤: 1、查找并获取要合并的碎片文件集合 2、按指定顺序遍历碎片文件集合 【难点】 3、遍历一个碎片文件,就变为字节数组,追加写入合并文件...遍历结束,文件合并结束 合并三要素: ①确保获取的文件集合正确 ②确保碎片是按指定顺序遍历 ③确保是追加方式写入合并文件 合并示例代码:...,主要看当前try…catch…finally中是否有执行throws或return 若出现,则无法执行finally外的代码,因为方法被结束了 7、继承中的异常抛出和返回值类型 子类抛出异常/子类返回值类型

    84610

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

    在金融产品估值时,细节最多的就是如何生成日期和年限了,最核心的细节如下: 支付日通常不会落在周末和公共假期上,如落到,那么根据“顺延”或“修正顺延”到后一个工作日,或者“提前”或“修正提前”到前一个工作日...工作日惯例解决这个问题。 两个日期之间的计数有对相应的惯例,比如“Actual/365”计算的天数就是两个日期之间实际的天数,而30/360“”有着特殊的算法。 日期计数惯例解决这个问题。...本帖分两章,第一章阐明理论,第二章展示代码。 1 理论 1.1 工作日惯例 工作日 (business day) 被认为是每周的正式工作的日子。...定义这两个日期为起始日 (其年月日为 y1, m1, d1) 和结束日 (其年月日为 y2, m2, d2),并解释以下缩写含义: ISDA: International Swap Derivative...Bus/252 年限等于包括起始日不包括结束日之间的工作日天数除以 252。该惯例用于巴西市场。 下图给出基本日期计数惯例的总结: ?

    1.5K20

    VBA代码:将水平单元格区域转换成垂直单元格区域

    它拾取已使用的单元格区域: ar=ws.UsedRange Data工作表中的所有数据都存储这个变量中。 在此之后,需要循环遍历15列(3个描述性列和12个数字列)。...For i=2 To UBound(ar,1) 原始循环从第2行开始,因为忽略了标题,这5列的标题位于Output工作表的第1行。...下面是希望在12个月内重复的数据的循环构造。这将是部门、账户和成本中心。 For k = 1 To 3 var(k, n) = ar(i, k) Next k 循环从第1列开始,一直转到第3列。...在第一个实例中,这是1,然后随着i循环的每次迭代,它将增长1。数组ar(i,j)只是对随着两个循环i和j的每次迭代而增长的行i和列j的引用。 运行完所有循环后,该过程就基本完成了。...[A2].Resize(n, 5) = WorksheetFunction.Transpose(var) 上面的代码是从第2行开始,并将区域调整为n所在的任何值,因此可能是108行,共有5列。

    1.4K30

    2022年来了,从Python定制一份日历开始吧!

    一、准备 开始之前,你要确保Python和pip已经成功安装在电脑上噢,如果没有,进行安装。如果你用Python的目的是数据分析,可以直接安装Anaconda。...2022年i月的日历,它类似一个j*k的矩阵,因此可以这样遍历得到每一个日期: # calendar.monthcalendar 获得的值类似于: # [[0, 0, 0, 0, 1, 2, 3],...size=14) sheet是对应的表格,row和column就是某个单元格的位置,然后对font属性进行设置,调用Font类并设置参数。.../{i}.jpg') sheet.add_image(img, 'I2') 12graphs下存放了12个月份的图,循环遍历每张表格,就能将对应的图表添加并渲染到 I2 格子上. ...很简单,复制拉取你想要的部分,粘贴到任何聊天窗口就能变成一张图片! 大家可以阅读代码,根据自己喜好尝试设置背景色、边框色、交替色和图片。

    66610
    领券