ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 Excel Home精品图文教程库
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
300集Office 2010微视频教程 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 7304|回复: 11

[分享] 在透视表中如何将自然月转换为会计月。

[复制链接]

TA的精华主题

TA的得分主题

发表于 2010-5-26 11:32 | 显示全部楼层 |阅读模式
  在财务应用中,很多单位的财务轧账日期和自然月不完全一致。那么在有关财务数据的汇总中如何做到按会计月来计算呢?通常的方法有两种:1.透视表中手动组合日期;2.在数据源中添加辅助列,加载公式定义出会计月,然后再透视。
  除了以上两种方法之外,还有一种方法。引入外部查询,通过SQL语句构造会计月的方法来达到目的。下面举个例子来说明,自然月份的1-25号算当月,当月26号以后归集到下个会计月。
  SQL语句如下:
select 日期,单号,材料编号,名称,规格,单位,数量,IIF(month(日期)=12,IIF(day(日期)<26,month(日期),1),IIF(day(日期)<26,month(日期),month(日期)+1)) as 会计月份 from [sheet1$a1:g49]

[ 本帖最后由 抹香鲸2009 于 2010-5-26 14:27 编辑 ]
2010-05-26_112926.gif

透视表中如何将自然月转换为会计月.rar

18.69 KB, 下载次数: 81

TA的精华主题

TA的得分主题

 楼主| 发表于 2010-5-26 11:48 | 显示全部楼层
自己坐沙发。
为了严谨起见,修改语句如下。(可以把年月综合考虑,以解决跨年的问题)
select 日期,单号,材料编号,名称,规格,单位,数量,iif(month(日期)=12,IIF(day(日期)<26,year(日期)&"年"&month(日期)&"月",year(日期)+1&"年1月"),iif(day(日期)<26,year(日期)&"年"&month(日期)&"月",year(日期)&"年"&month(日期)+1&"月")) as 会计年月 from [sheet1$a1:g49]

[ 本帖最后由 抹香鲸2009 于 2010-5-31 08:22 编辑 ]
会计年月.gif

TA的精华主题

TA的得分主题

发表于 2010-5-26 11:54 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
学习了~~
再加点难度,如果是多表,即出库和入库或者有更多的出入库类型,不在同一表,分开记录,这个分月的语句又该如何写呢?

TA的精华主题

TA的得分主题

发表于 2010-5-26 12:31 | 显示全部楼层
赞同考虑年月日做法,因为年初要考虑跨年度。你的做法只能是使用SQL的一种做法,谈技巧太复杂,多数人还不会,哈哈,包括我。

TA的精华主题

TA的得分主题

 楼主| 发表于 2010-5-26 13:49 | 显示全部楼层

回复 4楼 zhc19620430 的帖子

谢谢您的提醒,刚开始没有考虑跨年的问题。谢谢!

TA的精华主题

TA的得分主题

发表于 2010-5-26 14:21 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2010-5-27 09:11 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助

回复 2楼 抹香鲸2009 的帖子

不错的做法!~~~

TA的精华主题

TA的得分主题

发表于 2010-5-27 09:28 | 显示全部楼层
这两天我们探讨的是就在数据透视表里做,不使用数据源做。
数据透视表2.gif

TA的精华主题

TA的得分主题

 楼主| 发表于 2010-5-27 09:41 | 显示全部楼层

回复 7楼 penghaifeng 的帖子

谢谢老师的肯定,其实我是瞎闹玩的,就是锻炼一下看能不能用SQL做。之前的东西都是从你身上学到的,非常感谢,以后还要师从你。还望多多提携。

[ 本帖最后由 抹香鲸2009 于 2010-5-27 09:47 编辑 ]

TA的精华主题

TA的得分主题

 楼主| 发表于 2010-5-27 09:46 | 显示全部楼层

回复 8楼 zhc19620430 的帖子

谢谢你提供另一种做法。不好意思,有个小疑问:用组合的方法基本能解决。可是如果遇到大月份和小月份的日期有1-3天之差。步长不好设置吧?

[ 本帖最后由 抹香鲸2009 于 2010-5-27 09:48 编辑 ]
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-4-28 00:09 , Processed in 0.031127 second(s), 10 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表