excel中的networkdays函数怎么用 excel时间进度达成率公式?

[更新]
·
·
分类:互联网
2054 阅读

excel中的networkdays函数怎么用

excel时间进度达成率公式?

excel时间进度达成率公式?

让A列的A131(一个月的天数)
让B列的B11(每月的第几天) 一直到 B2929 B3030 B3131
在C列套用公式:C1B1/A1*100%
然后向下托用公式。
例如:
如果是按实际日期进度,输入公式并将该单元格格式设置为百分比:
(TODAY()-DATE(YEAR(TODAY()),1,1) 1)/(DATE(YEAR(TODAY()),12,31)-DATE(YEAR(TODAY()),1,1) 1)
如果是按工作日进度,输入公式并将该单元格格式设置为百分比:
NETWORKDAYS(DATE(YEAR(TODAY()),1,1),TODAY())/NETWORKDAYS(DATE(YEAR(TODAY()),1,1),DATE(YEAR(TODAY()),12,31))

怎么用VBA实现筛选,复制功能?

1。 选择要删除条件格式的单元格; 2。 选择菜单“格式”/“条件格式…”,在系统弹出“条件格式”设置对话框中按“删除”按钮。 或者 1。 选择没有设置条件格式的单元格; 2。 按下工具列的格式刷,对要删除条件格式的单元格进行格式复制。
如要删除工作表中全部或部分相同条件格式,可先按“Ctrl G”,之后在对话框中按“定位条件”,系统显示定位条件对话框(参见图五),在该框中,选择“条件格式”,之后,根据需要选择“全部”或“相同”,再按“确定”,回到编辑窗口,这时,所有设置了条件格式的单元格都被选中,再按上面所讲的第一种删除方法删除即可。
图五自动工作日计算 工作量当然得以“工作日”的数量去安排,但每个月的天数不同,而且周六日也不尽相同。如果想准确地知道一个月有多少个工作日,可以请Excel来帮忙! 小知识 标准工作日是指法律规定的各企业、事业、机关、团体等单位在正常情况下普遍实行的工作日。
通俗的说,就是指除了国家法定节假日(双休日、元旦、五一、国庆、春节等)之外正常工作的日期。 任务分析 因为每月的总天数和双休日的分布是不同的,而且春节是农历的假期,简单地使用Excel函数去计算是满足不了要求的。我们先使用Excel“分析工具库”中的networkdays()函数计算出“准工作日”,再考虑其中的特殊农历假日。
这样就能准确的算出“工作日”的天数。 有请 networkdays()函数 通常情况下,在Excel中是找不到这个函数的。别着急,跟我来。单击“工具→加载宏”,在弹出的“加载宏”对话框中复选“分析工具库”,再单击“确定”按钮。将Office的安装光盘放入光驱,按提示即可安装成功,如图1。
外来的和尚念不好经 networkdays()函数的语法为:networkdays(Start_date,End_date,Holidays)。其中Start_date表示开始日期,End_date为终止日期,Holidays表示一个或者多个特定假日序列,可以采用单元格引用的方式。
如图2,B8单元格公式“networkdays(B2,B3,B4:B6)”结果为20。事实上,2004年的10月2日和3日是星期六和星期天,那么按照我们的习惯就会通过调休的方式,最终得到10月份只有18天上班,而不是networkdays()函数计算出的20天。
特殊假日的处理 虽然说直接应用networkdays()函数并不能得到正确的工作日天数,但我们还是可以通过对此函数的变化来得到。图3是我们的范例,演示了如何一步一步逼近我们的目标。 第一步:将A列定义为月份。选中A列,在右键菜单中选择“设定单元格格式”,在“数字”标签中选择“分类”为“自定义”,“类型”中输入“yyyy-mm”格式,单击“确定”按钮退出。
第二步:设计B列公式。先直接用networkdays()函数计算只考虑本月除去双休日后的天数。虽然可直接使用该函数,但需要知道每月的开始日期和终止日期。开始日期当然是每月的1日,用“date(year(A2),month(A2),1)”表示就OK了。
结束日期应当是每月的最后一天,这就有些难度了,究竟是30日、31日还是28日、29日?需要一个复杂的判断关系。这里我们采用了一个变通的办法,就是当月的最后一天其实就是下月的第一天再减去1天,所以我们可以用“date(year(A2),month(A2) 1,1)-1”来表示。
于是B2的公式就有了:“networkdays(date(year(A2),month(A2),1),date(year(A2),month(A2) 1,1)-1)”。第三步:计算除了春节以外的双休日。我们知道国家规定的公众假日一共10天,除了春节的3天是每年变化的外,其余元旦1天,劳动节3天,国庆节3天都是固定的。
因此我们可以用IF函数对月份是否是1月、5月和10月做判断,再来减去相应的公众假日天数,就得到了不考虑春节以外的工作日。于是C2if(month(A2)5,B2-3,if(month(A2)5,B2-3,if(month(A2)1,B2-1,B2)))或者使用or()函数就是C2if(or(month(A2)5,month(A2)10),B4-3,if(month(A2)1,B4-1,B4))。
第四步:考虑春节的问题。根据常识,春节的三天只会在1月份或者2月份出现,也就是说最后的判断只正对1、2月份。通过万年历查询得到2000——2010这十年的春节分布,巧的是正好没有春节三天跨月份的年份,也就是说春节三天不是落在1月份就是落在2月份,如图4所示,这给我们应用IF函数判断带来了方便。
通过对年份和月份的判断,减去相应的春节天数,就得到了真正意义上的工作日。因此在D2中应该输入IF(AND(OR(YEAR(A2)2001,YEAR(A2)2004,YEAR(A2)2006,YEAR(A2)2009),MONTH(A2)1),C2-3,IF(AND(OR(YEAR(A2)2000,YEAR(A2)2002,YEAR(A2)2003,YEAR(A2)2005,YEAR(A2)2007,YEAR(A2)2008,YEAR(A2)2010),MONTH(A2)2),C2-3,C2))。
第五步:隐藏过渡列。选中“B:C”这两列,在右键菜单中选择“隐藏”,将中间用于计算方便所使用的过渡列B和列C隐藏即可。 选中区域B2:D2,按住填充柄向下拖动填充后,只要在A列任一单元格输入月份,就可以在D列得到该月相应的天数,是不是很方便? 让多页表自动生成表头 当我们制作的表格有好多页的时候(如成绩统计表等),为便于观看,最好是每一页都添加一个相同的表头。
如果表格文件页数很少,通过手工的方法就可以很容易地实现。但当一个表格文件多达数十页的时候,再一个一个地逐页添加,不仅费事,还容易出错。那么,有没有办法让系统自动生成呢? 1). 在Word 2003中 打开Word 2003表格文档,选中第一页表的表头,然后点击“表格→标题行重复”。
假如表头有两行内容,选中开头两行,这样,在后面的每一页,都会将这两行的内容作为表头。 2). 在Excel 2003中 (1)打开Excel表格文档,点击“文件→页面设置”。 (2)在调出的“页面设置”对话框中,选择“工作表”选项卡,在“顶端标题行”栏中输入表头行号,其中,“$1”表示第1行,“$1:$2”表示第1、2行。
本例中设置为“$1:$2”,打印出来的每页表格便都有同第1、2两行同样内容的表头。 3). 在金山文字2003中 (1)打开金山文字2003表格文档,选中表格,然后点击“表格→表格属性→表格外观”。 (2)在调出的“表格外观”属性窗口上,选择“外观设定”为“行列式1”,设置“以标题行重复出现行数”,本例设置为“2”,即在每一页表格都自动生成与第1、2行内容相同的表头。
4). 在金山表格2003中 (1)打开金山表格2003,点击“文件→页面设置”。 (2)在调出的“页面设置”选单中,选择“工作表”选项卡,在“顶端标题行”输入表头行数,本例为“2”,即在打印出来的每一页表格上,都自动生成与第1、2行内容相同的两行表头。
如果表格的表头在左边,可以在“左端标题列”栏中输入表头列数。 Excel轻松实现自动换行 Excel处理数据之便捷众人皆知,可在其单元格内换行就略显不便,不知你是否也遇到过此类问题?通过摸索,以下四法便能轻松实现单元格内的自动换行。
1。 输入数据随时换行 用户若要在输入数据时换行,只要通过Alt Enter组合键即可轻松实现。此方法同样可使已输入内容的单元格在光标所在处换行。 2。 单元格区域内换行 将某个长行转成段落并在指定区域内换行。
例如:A10内容很长,欲将其显示在A列至C列之内,步骤是:选定区域A10:C12(先选A10),选择“编辑→填充→内容重排”,A10内容就会分布在A10:C12区域中。此法特别适合用于表格内的注释。 3。 调整单元格格式换行 选定单元格,选择“格式→单元格”,在弹出的对话框中单击“对齐”,选中“自动换行”复选框,单击[确定]按钮即可。
4。 文本框的巧用 单击“视图”菜单,在“工具栏”命令中,选中“绘图”工具栏,单击该工具栏的“文本框”,为了保证文本框的边界与工作表网格线重合,需按住Alt键的同时插入文本框,然后,就可以在文本框中任意输入内容了。 通向Excel智能化的N条捷径 智能判断Excel重复数据 在Excel工作表中,若要判断各个单元格中的数据是否重复并统计出重复的行号,可使用函数令其自动执行操作。
假设,要统计显示于A1~A12单元格中的数据。首先,在B1单元格中输入代码: IF(COUNTIF($A$1:$A$13,VLOOKUP(A1,A2:$A$13,1,0))gt1,CONCATENATE(