当前位置:首页>编程日记>正文

bartender外部表不是预期格式_批量合并Excel数据时“外部表不是预期格式”或“文件包含损坏数据”的两种情况...

很多朋友在用Power Query合并(汇总)Excel数据时,碰到过“DataFormat.Error:外部表不是预期格式”或“DataFormat.Error:文件包含损坏的数据”的错误提示:

bartender外部表不是预期格式_批量合并Excel数据时“外部表不是预期格式”或“文件包含损坏数据”的两种情况... 配图01

bartender外部表不是预期格式_批量合并Excel数据时“外部表不是预期格式”或“文件包含损坏数据”的两种情况... 配图02

      将数据从PQ加载到Excel时可能也会出现类似下面的提示:

bartender外部表不是预期格式_批量合并Excel数据时“外部表不是预期格式”或“文件包含损坏数据”的两种情况... 配图03

         针对这两种错误,主要是由以下两种情况导致的:

1、要合并汇总的数据是从某些专业平台或系统导出的xls(2003版以前)格式Excel文件;

2、文件夹中包含了一些临时的缓存文件。

- 情况1:xls文件 -

       首先要说明的是,并不是Power Query不支持xls格式Excel文件的读取,只是某些专业平台或系统导出的xls文件读取会出错而已

bartender外部表不是预期格式_批量合并Excel数据时“外部表不是预期格式”或“文件包含损坏数据”的两种情况... 配图04

       当你用PQ接入某个xls文件出现错误时,基本都是这种原因。解决的办法也很简单,用Excel打开该文件,然后另存为xlsx格式即可。

       当然,这种情况下,往往需要导入的文件都是一大批的,一个个打开另存可能比较麻烦,为了方便,可以收藏一段VBA代码用于自动化处理:

Sub save_xls_to_xlsx()    '作者:大海    '日期:2019-11-9    '公众号:Excel到PowerBI     Dim folder As FileDialog Dim f, fdi As FileDialogSelectedItems Dim i As Integer Dim file_count As Integer Dim xls_file As String Dim xlsx_file As String Dim wb As Workbook Set folder = Application.FileDialog(msoFileDialogFolderPicker) folder.Show Set fdi = folder.SelectedItems If fdi.Count = 0 Then MsgBox "未选择任何文件夹。" Exit Sub End If    For Each f In fdi xls_file = Dir(f & "*.xls") file_count = 0 Do If Right(xls_file, 4) = ".xls" Then Set wb = Workbooks.Open(f & "" & xls_file) Application.ScreenUpdating = False xlsx_file = f & "" & xls_file & "x" ActiveWorkbook.SaveAs Filename:=xlsx_file, FileFormat:=xlWorkbookDefault, CreateBackup:=False wb.Close savechanges:=False Kill f & "" & xls_file '若不想删除原文件,可注释掉本行 file_count = file_count + 1 Application.ScreenUpdating = True End If xls_file = Dir Loop Until xls_file = ""    Next MsgBox "该文件夹下的xls文件(共" & CStr(file_count) & "个)已全部转换为xlsx文件。谢谢您对大海的支持!" End Sub

- 情况2:临时缓存文件 -

       这种情况处理比较简单,在从文件夹导入数据时,就能看到(文件名开头为“~$”),这种文件产生的原因有很多,比如文件正在打开的过程中,或者出现操作错误没有正常退出等等:

bartender外部表不是预期格式_批量合并Excel数据时“外部表不是预期格式”或“文件包含损坏数据”的两种情况... 配图05

      这些文件通常都是不需要的,所以,PQ从文件夹读入文件后,即可直接通过筛选(文件名开头不是“~$"的工作簿)的方式去掉:

bartender外部表不是预期格式_批量合并Excel数据时“外部表不是预期格式”或“文件包含损坏数据”的两种情况... 配图06bartender外部表不是预期格式_批量合并Excel数据时“外部表不是预期格式”或“文件包含损坏数据”的两种情况... 配图07

Power新书榜第1 | 最适合入门打基础

当当京东超低折扣进行中

最通俗易懂Power系列视频 -

购书领60元视频券 or 直购视频送签名书

bartender外部表不是预期格式_批量合并Excel数据时“外部表不是预期格式”或“文件包含损坏数据”的两种情况... 配图08

点“阅读原文”看视频

11·11大促狂欢

腾讯课堂领券直减50元

本文配套材料下载

(按文章发布日期确定对应文件)

https://share.weiyun.com/5YKFr4Z


http://www.coolblog.cn/news/f3ea426f0d3acbf5.html

相关文章:

  • asp多表查询并显示_SpringBoot系列(五):SpringBoot整合Mybatis实现多表关联查询
  • s7day2学习记录
  • 【求锤得锤的故事】Redis锁从面试连环炮聊到神仙打架。
  • 矿Spring入门Demo
  • 拼音怎么写_老师:不会写的字用圈代替,看到孩子试卷,网友:人才
  • Linux 实时流量监测(iptraf中文图解)
  • Win10 + Python + GPU版MXNet + VS2015 + RTools + R配置
  • 美颜
  • shell访问php文件夹,Shell获取某目录下所有文件夹的名称
  • 如何优雅的实现 Spring Boot 接口参数加密解密?
  • LeCun亲授的深度学习入门课:从飞行器的发明到卷积神经网络
  • Mac原生Terminal快速登录ssh
  • java受保护的数据与_Javascript类定义语法,私有成员、受保护成员、静态成员等介绍...
  • mysql commit 机制_1024MySQL事物提交机制
  • 支撑微博千亿调用的轻量级RPC框架:Motan
  • jquery 使用小技巧
  • 2019-9
  • 法拉利虚拟学院2010 服务器,法拉利虚拟学院2010
  • vscode pylint 错误_将实际未错误的py库添加到pylint白名单
  • 科学计算工具NumPy(3):ndarray的元素处理
  • 工程师在工作电脑存 64G 不雅文件,被公司开除后索赔 41 万,结果…
  • linux批量创建用户和密码
  • newinsets用法java_Java XYPlot.setInsets方法代碼示例
  • js常用阻止冒泡事件
  • 气泡图在开源监控工具中的应用效果
  • 各类型土地利用图例_划重点!国土空间总体规划——土地利用
  • php 启动服务器监听
  • dubbo简单示例
  • 【设计模式】 模式PK:策略模式VS状态模式
  • [iptables]Redhat 7.2下使用iptables实现NAT
  • Ubuntu13.10:[3]如何开启SSH SERVER服务
  • CSS小技巧——CSS滚动条美化
  • JS实现-页面数据无限加载
  • 阿里巴巴分布式服务框架 Dubbo
  • 最新DOS大全
  • Django View(视图系统)
  • 阿里大鱼.net core 发送短信
  • 程序员入错行怎么办?
  • 两张超级大表join优化
  • 第九天函数
  • Linux软件安装-----apache安装
  • HDU 5988 最小费用流
  • Sorenson Capital:值得投资的 5 种 AI 技术
  • 《看透springmvc源码分析与实践》读书笔记一
  • 正式开课!如何学习相机模型与标定?(单目+双目+鱼眼+深度相机)
  • Arm芯片的新革命在缓缓上演
  • nagios自写插件—check_file
  • python3 错误 Max retries exceeded with url 解决方法
  • 行为模式之Template Method模式
  • 通过Spark进行ALS离线和Stream实时推荐