加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

430·合并文件夹下所有CSV

(2020-07-01 16:39:56)
标签:

合并

csv

pq

分类: 输入输出问题

PowerQuery一个一个导入CSV文件,再【合并查询】毕竟效率低下。

与导入文件夹下所有工作簿一样,文件夹下所有CSV文件也可整体导入。

430·合并文件夹下所有CSV

【数据>获取数据>自文件>从文件夹】。

430·合并文件夹下所有CSV

找到存放所有CSV文件的文件夹,点击【转换数据】。430·合并文件夹下所有CSV

进入【PowerQuery编辑器】,看到文件夹下,所有CSV文件以二进制被读取。

430·合并文件夹下所有CSV

除保留二进制文件列之外,【删除其他列】。

430·合并文件夹下所有CSV

【添加列>自定义列】,录入自定义列公式= Csv.Document([Content])

430·合并文件夹下所有CSV

二进制CSV文件被读取为表格文件,但系统自动添加了列标题。

430·合并文件夹下所有CSV

如果需要为每一个表格文件提升标题,就在Csv.Document之前嵌套一个Table.PromoteHeaders函数。

430·合并文件夹下所有CSV

之后只保留【自定义列】并点击右侧的【展开】按钮,展开数据即可。

430·合并文件夹下所有CSV

Csv.Document函数读取CSV文件,第一个参数是源数据列。

第二个参数可选,代表你要返回的列数或列名称。省略默认返回所有列。

第三个参数可选,指定CSV文本格式各列的分隔符。省略默认为逗号。

第四个参数可选,是一个数值,表示源数据列比指定的列数多怎么处理。0是返回一个超出列的列表,1代表报错,2代表忽略错误。

第五个参数可选,是一个数值,指定CSV文件编码类型。省略默认为65001 (UTF-8)

·         Encoding:文件的文本编码。 默认值:65001 (UTF-8)

·         CsvStyle:指定如何处理引号。 CsvStyle.QuoteAfterDelimiter(默认):字段中的引号只有紧跟分隔符之后才有意义。 CsvStyle.QuoteAlways:不论在何处出现,字段中的引号始终有意义。

·         QuoteStyle:指定如何处理带引号的换行符。 QuoteStyle.None(默认):所有换行符都视为当前行的末尾,即使它们出现在带引号的值中。 QuoteStyle.Csv:带引号的换行符视为数据的一部分,而不视为当前行的末尾。 

Table.PromoteHeaders函数用来将表格的第一行提升为新的列标题。

================================================================

关注  法叔office
学习 办公小知识 
430·合并文件夹下所有CSV

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有