python打不开xls文件,wps下用vba实现合并文件夹中所有excel文件
python打不开xls文件,用wps下vba解决问题
- 用了常用的三种python读写xls文件的方法都报错
- xlrd
- openpyxl
- pandas
- 原因
- 解决方法
- 用vba实现合并文件夹中所有excel文件
用了常用的三种python读写xls文件的方法都报错
xlrd
代码
book = xlrd.open_workbook(filename)
报错
xlrd.biffh.XLRDError: Unsupported format, or corrupt file: Expected BOF record; found b'<html xm'
openpyxl
代码
book = openpyxl.load_workbook(filename)
报错
openpyxl.utils.exceptions.InvalidFileException: openpyxl does not support the old .xls file format, please use xlrd to read this file, or convert it to the more recent .xlsx file format.
pandas
代码
book = pd.read_excel(filename)
报错
xlrd.biffh.XLRDError: Unsupported format, or corrupt file: Expected BOF record; found b'<html xm'
原因
可能是由于要打开的xls文件不是标准的97-03版本
解决方法
用vba实现功能即可。例如:
用vba实现合并文件夹中所有excel文件
打开wps表格,在文件夹新建一个excel文件,点击“开发工具”,点击“VB编辑器”,右键“Project“,“插入”——>“模块”,编辑代码,点击“运行”。
Sub 合并当前目录下所有工作簿的全部工作表()
Dim MyPath, MyName, AWbName
Dim Wb As Workbook, WbN As String
Dim G As Long
Dim Num As Long
Dim BOX As String
Application.ScreenUpdating = False
MyPath = ActiveWorkbook.Path
MyName = Dir(MyPath & "\" & "*.xls")
AWbName = ActiveWorkbook.Name
Num = 0
Do While MyName <> ""
If MyName <> AWbName Then
Set Wb = Workbooks.Open(MyPath & "\" & MyName)
Num = Num + 1
With Workbooks(1).ActiveSheet
.Cells(.Range("B65536").End(xlUp).Row + 2, 1) = Left(MyName, Len(MyName) - 4)
For G = 1 To Sheets.Count
Wb.Sheets(G).UsedRange.Copy .Cells(.Range("B65536").End(xlUp).Row + 1, 1)
Next
WbN = WbN & Chr(13) & Wb.Name
Wb.Close False
End With
End If
MyName = Dir
Loop
Range("B1").Select
Application.ScreenUpdating = True
MsgBox "共合并了" & Num & "个工作薄下的全部工作表。如下:" & Chr(13) & WbN, vbInformation, "提示"
End Sub
python打不开xls文件,wps下用vba实现合并文件夹中所有excel文件相关推荐
- r读取文件夹下的所有csv文件_[R语言]读取文件夹下所有子文件夹中的excel文件,并根据分类合并。...
解决的问题:需要读取某个大文件夹下所有子文件夹中的excel文件,并汇总,汇总文件中需要包含的2部分的信息:1.该条数据来源于哪个子文件夹:2.该条数据来源于哪个excel文件.最终,按照子文件夹单独 ...
- python找到文件夹下指定文件类型_python 读取指定文件夹中的指定文件类型的文件名...
C# 读取指定文件夹中的全部文件,并按规则生成SQL语句! 本实例的目的在于: 1 了解怎样遍历指定文件夹中的全部文件 2 控制台怎样输入和输出数据 代码: using System; using S ...
- python拆分excel的sheet为单文件_WPS 2019 多个sheet表拆分成独立的excel文件
参考: 场景:将多个sheet表拆分成独立的excel文件 一.安装VB工具: 默认情况下:wps -- 开发工具 --- VB 编辑器是灰选状态(即不可用状态),此时需要先安装vb工具:VBA Fo ...
- python批量处理txt_浅谈Python批处理文件夹中的txt文件
1 文件处理形式 近期由于处理大量数据,所以对于采用python进行处理文件的一些操作也打算整理一下:接下来主要说一下如何处理目录下的一系列txt文件.首先看一下我们将要处理目录下的15个类似的数据文 ...
- python从文件夹中提取指定文件_使用Python实现从各个子文件夹中复制指定文件的方法...
之前用来整理图片的小程序,拿来备忘,算是使用Python复制文件的一个例子. # -*- coding: utf-8 -*- #程序用来拷贝文件并输出图片采集日期等其他信息到Excel中 #文件夹结构 ...
- 在python中创建Excel文件并写入数据
来源:<在python中创建Excel文件并写入数据> python中的包xlwt和xlsxwriter都是比较方便创建excel文件并写入数据的. xlwt中: 通过xlwt.Workb ...
- python爬虫入门练习:BeautifulSoup爬取猫眼电影TOP100排行榜,pandas保存本地excel文件
传送门:[python爬虫入门练习]正则表达式爬取猫眼电影TOP100排行榜,openpyxl保存本地excel文件 对于上文使用的正则表达式匹配网页内容,的确是有些许麻烦,替换出现任何的差错都会导致 ...
- 合并文件夹内所有Excel文件(目前仅限于合并单层文件夹,如果文件夹下面有文件夹,暂未加入此功能,默认合并所有文件的所有Sheet)优化文件名_变更为:文件夹名字 + 合并的文件-(xls+xlsx)
几经修改,终于算是成为自己较为满意的一个VBA程序(2020-6-6修正) 然,因个人才疏学浅,如有疏漏,希望各位前辈多多指正~在下先行谢过~ 1.考虑到Excel新建Sheet的命名规则 2.考虑到 ...
- R语言write.xlsx函数将数据写入Excel文件:写入Excel文件并自定义表单的名称、将数据写入Excel文件新的表单(sheet)中、将文件保存为xls文件格式(而不是xlsx)
R语言write.xlsx函数将数据写入Excel文件:写入Excel文件并自定义表单的名称.将数据写入Excel文件新的表单(sheet)中.将文件保存为xls文件格式(而不是xlsx) 目录
最新文章
- 15瓶饮料4个空瓶换一瓶_2021江苏公务员考试行测技巧:你会用“空瓶”换水吗?...
- CodeChef--EQUAKE
- javascript:document的属性和方法,title,innerHTML,
- Redis热点Key发现及常见解决方案
- 第十六 django进一步了解
- 第一个 mac 程序 Create-JSON-Model
- (转载)机器学习知识点(十三)吉布斯采样法(Gibbs Sampling)
- Python-基础知识-字典dict和集合set
- Promise处理前端异步事件
- Android中常用到的权限
- 分别统计出其中英文字母、空格、数字和其它字符的个数 matlab 程序,编写一段程序,要求先输入一行字符,然后分别统计出其中英文...
- 掌握 React 与 React Native
- Mac重复文件清理软件—Cisdem Duplicate Finder for mac
- 一个广为流传的关于项目管理的通俗讲解
- 5G概念被热炒,运营商吃相不要太难看
- Ubuntu 定时开关机
- 《Go语言实战》学习笔记——包
- 802d简明调试手册_西门子数控系统828D简明调试手册.pdf
- WebFlux 响应式编程介绍及简单实现
- 2_linux-常用命令-实例
热门文章
- 百度android 升级,百度浏览器app下载_百度浏览器v6.4.21安卓去广告去升级版-这家软件站...
- 【Leetcode】1641. Count Sorted Vowel Strings
- 微信公众号网页H5跳转微信小程序
- 下划线的作用(python)
- NYIST汉诺塔(一)(三)问题以及汉诺塔的路径实现
- spring的IOC容器
- ThreadPoolTaskExecutor 线程池的使用
- 迅速学java——100条小知识点快速入门
- matlab中syms与sym有什么区别
- 深入理解java虚拟机-第五章:虚拟机字节码执行引擎