当前位置: 欣欣网 > 办公

没想到!把excel统计表做成日历后,太高级了

2024-02-03办公

兰色最近在发愁一件事情:用透视表做的月统计表,总感觉太low了。

于是兰色又开启天马行空式的思索.....哈哈,脑海里竟然浮现出日历的模板,说做就做,做出的效果真的不一般,不仅颜值拉满,而且非常的实用。

你以为仅如此吗?NO! 它还可以查看详细销售项目汇总。

还可以生成详细销售清单

嘿嘿...我猜你肯定想知道是怎么做到的,下面跟兰色一起做吧。

步骤1 做日历

在第一个格中输入公式

=DATE(C3,E3,1)-WEEKDAY(DATE(C3,E3,1),2)+1

其他日期用+1和+7即可生成。

把非本月的日期隐藏:按ctrl从下向上选取日期行添加条件格式

条件: =month(C6)<>$E$3

格式:自定义代码 ;;; (3个分号)

再把通过自定义代码d把日期显示成天数。

步骤2 添加每日销售汇总数字

=IF(MONTH(C6)<>$E$3,0,SUMIF(销售明细表!$B:$B,C6,销售明细表!$G:$G))

注:如果不是本月日期结果返回0,是本月就根据日期用SUMIF从销售明细表中汇总金额。 销售明细表!$B:$B为日期列, 销售明细表!$G:$G为金额列。

步骤3 生成销售汇总和销售明细

这里要使用两段代码辅助完成

把选取的日期输入到单元格中的事件程序:

添加方法:在工作表标签上右键 - 查看代码 - 把下面代码粘贴到右侧的空白处

Private Sub Worksheet_SelectionChange(ByVal Target As Range)On Error Resume NextIf Target.Column < 10 And Target.Column > 2 And Target.Row > 5 And Target.Row < 16 ThenIf IsDate(Target) Then [Q2] = TargetElse [Q2] = Target.Offset(-1, 0) End If 生成明细End IfEnd Sub

生成销售明细的筛选代码

添加方法:在工作表标签上右键 - 查看代码 - 在新窗口中插入 - 模块,把下面的代码粘贴空白处。

Sub 生成明细() Sheets("销售明细表").Range("B1:L1100").AdvancedFilter Action:=xlFilterCopy, _ CriteriaRange:=Range("销信日历!Criteria"), CopyToRange:=Range("Q5:AA5"), _ Unique:=FalseEnd Sub

如果你的版本是office365,上面这段代码可以用filter公式完成。

步骤4 另存为启用宏的excel工作簿

兰色说: 销售日历属兰色的模板大全教程的第13套模板,买过教程的同学可以下载和看视频学习。

模板大全是兰色根据多年工作经验制作的适合多行业用的模板,包括进销存、预算管理、工资管理、发票管理、项目进度管理、数据面板、月报表、利润分析等23套模板,每套模板均配有详细制作视频和提供模板下载。需要的同学可以点击下方链接购买。