如何对房间数据进行标识(门牌号码编排及其他)

在我们的生活或工作中经常会出现按一定规则对一组数据进行扩展,例如:大型国有企业的短期借款或是长期借款,会计每月要计提利息,投融资部门要掌握每笔贷款的还款时点或未来每一时点的贷款金额,审计部门要知道贷款的时点余额与利息计提是否一致,但由于贷款笔数较多、还贷款时点与贷款利率都不一样,导致数据测算有难度。同样的例子还有企业根据每位职工入厂时点发放劳保,如雨衣每隔3年一件、棉衣每隔5年一件、皮手套每隔2年一双等。

还有很多例子,但道理都一样,一理通百理明,现在以楼房门牌号码的编排为例学习一下数据的扩展。

在EXCEL中输入如下图的数据:

如何对房间数据进行标识(门牌号码编排及其他)(1)

将上述数据转换成表,表名改为“表1”,将表加载到Power Query里,然后进行如下操作:(1)添加自定义列,利用列表功能分别将单元数、楼层、居室数据扩展;(2)将新增的三列数据依次扩展到新行;(3)将扩展后的楼层与扩展后的居室数据合并,分隔符为“0”;(4)将楼号、扩展后的单元数、第三步生产的数据列进行合并,分隔符为“-”;(5)删除多余的列;(6)将数据加载到EXCEL。

上述是楼房门牌号码的编排,如果有楼层价格、居室面积等数据,后期就可以对数据进行透视、逆透视、超级透视,以及表级别的拆分、合并、对比与筛选工作。

上文操作自动生成代码如下:

let

源 = Excel.CurrentWorkbook(){[Name="表1"]}[Content],

更改的类型 = Table.TransformColumnTypes(源,{{"楼号", type text}, {"单元数", Int64.Type}, {"楼层", Int64.Type}, {"居室", Int64.Type}}),

单元数扩展 = Table.AddColumn(更改的类型, "单元数扩展", each {1..[单元数]}),

楼层扩展 = Table.AddColumn(单元数扩展, "楼层扩展", each {1..[楼层]}),

居室扩展 = Table.AddColumn(楼层扩展, "居室扩展", each {1..[居室]}),

单元数扩展到新行 = Table.ExpandListColumn(居室扩展, "单元数扩展"),

楼层扩展到新行 = Table.ExpandListColumn(单元数扩展到新行, "楼层扩展"),

居室扩展到新行 = Table.ExpandListColumn(楼层扩展到新行, "居室扩展"),

#"楼层、居室合并" = Table.CombineColumns(Table.TransformColumnTypes(居室扩展到新行, {{"楼层扩展", type text}, {"居室扩展", type text}}, "zh-CN"),{"楼层扩展", "居室扩展"},Combiner.CombineTextByDelimiter("0", QuoteStyle.None),"已合并"),

生成门牌号码 = Table.CombineColumns(Table.TransformColumnTypes(#"楼层、居室合并", {{"楼号", type text}, {"单元数扩展", type text}}, "zh-CN"),{"楼号", "单元数扩展", "已合并"},Combiner.CombineTextByDelimiter("-", QuoteStyle.None),"门牌号码"),

删除的列 = Table.RemoveColumns(生成门牌号码,{"单元数", "楼层", "居室"})

in

删除的列

,

免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com

    分享
    投诉
    首页