用WPS QUERY进行账户历史交易明细数据清洗
Lv.2 潜力创作者
“绿衣小表妹”形象由WPS灵犀专业版制作
单位组织开展内部控制专项审计,组长安排同事小白负责员工行为管理检查,方案要求重点关注客户经理存款账户的大额资金往来与异常交易情况。
下午一上班,小白就把一个名为“中国NY银行活期交易明细_20260108-20260408.XLSX"(https://www.kdocs.cn/l/cpngEAVQK5q3)的工作簿文件发给了我,说是一个客户经理提供的银行存款账户明细。
我打开电子工作簿文档,发现工作表中的"交易日期"和"交易时间"数据列都不是标准的格式,不好进行筛选和排序操作。另外,“对手信息”这一列中,存在空格字符与换行符,这会影响后续的数据匹配与汇总分析。因此,需要先通过数据清洗。
小白走过来说:“哥,麻烦你把这张表的”交易金额“这一列,给我弄一下,分成两列,改成那种”收入“和”支出“的形式,这样方便我单独统计发生额的收支笔数的汇总金额。”
我看了眼表格,交易金额列确实混在一起,借方和贷方都挤在一个字段里,不拆分的话后续分析根本没法做。我对小白说:“行,这个需求很实际,正好用WPS QUERY里的条件列功能来拆分,几分钟就能搞定。”
第一步
我从打开的工作表中编辑区中,任意点击一个单元格,再点击菜单栏「数据」选项卡,在「获取数据」功能组中找到「从表格/区域获取」,弹出”创建表“对话框,点击”确定“进入数据查询编辑器。
第二步
我在WPS编辑器中,选中"交易金额"列,在功能区点击"条件列",弹出"条件列"对话框,在”添加条件列“对话框中输入”收入“,用于根据条件生成新列。
第三步
我在”收入“条件列对话框中,点击「设置判断条件和输出结果」设置规则:当"交易金额"大于等于0时,输出值为"交易金额"本身;默认当"交易金额"小于0时,输出值为空。
第四步
我再新增一列”支出“条件列,点击「设置判断条件和输出结果」设置规则:当"交易金额"小于0时,输出值为"交易金额"本身;默认当"交易金额"大于0时,输出值为空。
小白走过来看了一眼,说:“哥,这条件列功能真方便,拆完之后收入支出清清楚楚,我统计起来就快多了。”
“但是,‘支出’金额都带负号,看着不太直观,能不能把它们都转成正数啊?”
我说,”好吧,看我用‘分列’功能把‘-’删除!“
第五步
我选中"支出"列,在功能区点击"拆分列",在弹出的对话框中按"分隔符号"分列,选择"其他"并输入"-",点击「确定」即可将负号移除,支出金额全部转为正数。
将多余的“支出.1”列右键删除,将“支出.2”列修改为“支出”列即可。
小白看到负号顺利去掉,支出金额一目了然,笑着说:“哥,这一手真利索,这下数据看起来清爽多了。”
设置完成后,将WPS QUERY生成的两列新数据移动到"交易金额"列右侧,原有的"交易金额"列保留不变,方便后续核对。
第六步
“拆分完之后,我又仔细看了一下,‘交易日期’和‘时间’这两个字段的格式确实不太规范,不方便后续筛选排序。”我对小白说,“接下来我把这两个字段也一并处理一下,省得你回头还得再跑一趟。”
小白赶紧说:“谢谢哥,还是你想得周到,这下我统计分析的时候就省心多了,日期和时间筛选起来也方便。”
小白看了看WPS QUERY编辑器,问:“哥呀,‘交易日期’和‘交易时间’类型怎么都变成了‘123’?而且’交易时间‘这一列数字有的是6位,有的是4位,有的甚至是个‘0’,怎么回事?“
我解释道:“这是因为导入数据时,WPS QUERY自作聪明默认把日期和时间识别成了数字格式。不用担心,我把编辑器右侧的‘步骤空格’中的‘修改列类型’和‘修改列类型1’这两个步骤全部删除就好了。”
第七步
我接着说:“你看,删掉那两步之后,‘交易日期’和‘交易时间’就可修改成原始的文本格式了。接下来,我们在‘添加列’菜单里选‘自定义列’,用 M 函数来规范日期和时间格式。”
由于当前的WPS QUERY编辑器还不能支持直接转换不规范"日期"和"交易时间"类型,我需要通过"自定义列"的方式调用M函数公式来进行格式转换。
说完,我选中"交易日期"列,点击「添加列」菜单,选择「自定义列」,在弹出的对话框中输入新列名"规范日期",然后在公式编辑框中输入 M 函数公式“=Date.From([交易日期])”来转换日期格式,并点击“插入列”。
重复以上步骤,选中"交易时间"列,点击「添加列」菜单,选择「自定义列」,在弹出的对话框中输入新列名"规范时间",然后在公式编辑框中输入 M 函数公式“=Time.From([交易时间])”来转换时间格式,并点击“插入列”。
第八步
转换完成后,我发现"规范日期"和"规范时间"两列自动生成了标准格式。便将左侧的"交易日期"和"交易时间"原始列点击右键删除(选中两列后直接按DELETE键更快),只保留新增的两列数据。
我继续对小白说:“不过删除之前先确认一下,右键点击原始列,选择‘删除列’就行,删除后不会影响已经生成好的规范日期和时间列,再把右侧的‘规范日期’和‘规范时间’两列数据执行‘移至首列’位置。”
最后两列数据移动至首列位置后,重新修改类型,整个数据表格就焕然一新了,日期和时间格式规范、清晰易读。
小白凑过来看了一眼,高兴地说:"哥,这下字段格式都规范了,我回头按日期筛选、按时间段排序都方便多了,真是太感谢了!
第九步
我继续对小白说:"对了,处理完日期和时间,别忘了再检查一下'对手信息'这一列。之前我发现里面有不少空格和换行符,会影响后续的匹配汇总。可以用'替换值'功能,把多余的空格和换行符清理干净,这样数据就彻底规范了。"
小白说:“哥,你连这个都帮我考虑到了,我正愁‘对手信息’那列乱七八糟没法汇总呢!替换值功能好用吗?快教教我怎么操作。”
我说:“当然好用,操作也很简单。首先选中‘对手信息’列,在功能区找到‘替换值’功能,点击后会弹出替换对话框。”在‘查找’对话框中,输入一个空格字符,‘替换为’对话框保持不变,点击确定即可把单元格内所有空格一次性清除。
最后一步,输出数据。
在WPS QUERY编辑器左上角点击「关闭并上载」,将清洗后的数据加载回WPS工作表中,即可得到一份规范、清晰、可直接用于分析的账户历史交易明细表。
收工了。
小白看着焕然一新的数据表,满意地点点头:“哥,你这套流程走下来,从拆分金额到规范日期时间,再到清理空格换行符,每一步都踩在痛点上了。这下我拿着这份数据去做审计分析,心里踏实多了。”
我笑着说:“WPS QUERY数据清洗本来就是审计分析的前置基本功,表干净了,分析才靠谱。以后遇到类似的活儿,直接按这套流程走就行。”
小白连连点头,把操作步骤认真记了下来:“记下了记下了,下次我自己来,争取也像哥一样几分钟搞定!”
Lv.2 潜力创作者
Lv.3 优质创作者
Lv.2 潜力创作者
Lv.3 优质创作者
Lv.2 潜力创作者
Lv.2 潜力创作者
Lv.2 潜力创作者