Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >Python到excel、openpyxl和文件格式无效

Python到excel、openpyxl和文件格式无效
EN

Stack Overflow用户
提问于 2016-07-03 20:02:12
回答 2查看 17.4K关注 0票数 9

下面是一个简单的代码片段,用于打开一个.xlsm文件,使用python向该文件写入一些值,然后保存该文件。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
import openpyxl
from openpyxl import load_workbook

def toExcel():
    wb = load_workbook(filename="C:\\Users\\Mark\\Documents\\Test.xlsm")
    ws = wb.worksheets[0]
    ws.cell(row=1, column=1).value = 'foo'
    ws['A2'] = 'bar'
    wb.save("C:\\Users\\Mark\\Documents\\Test1.xlsm")

toExcel()

当文件打开并保存时,它提到文件格式无效/损坏,无法打开。如果从wb.save中删除.xlsm,则在选择excel并打开方式后,它将保存并打开。为什么文件格式不是有效的?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-07-03 20:09:17

从这里:https://openpyxl.readthedocs.io/en/default/tutorial.html#saving-to-a-file

说明

以下操作将失败:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
>>> wb = load_workbook('document.xlsx')
>>> # Need to save with the extension *.xlsx
>>> wb.save('new_document.xlsm')
>>> # MS Excel can't open the document
>>>
>>> # or
>>>
>>> # Need specify attribute keep_vba=True
>>> wb = load_workbook('document.xlsm')
>>> wb.save('new_document.xlsm')
>>> # MS Excel can't open the document
>>>
>>> # or
>>>
>>> wb = load_workbook('document.xltm', keep_vba=True)
>>> # If us need template document, then we need specify extension as *.xltm.
>>> # If us need document, then we need specify attribute as_template=False.
>>> wb.save('new_document.xlsm', as_template=True)
>>> # MS Excel can't open the document
票数 4
EN

Stack Overflow用户

发布于 2019-12-19 21:13:48

我之所以找到这篇文章,是因为我试图用openpyxl从头开始创建一个.xlsm文件。我发现之所以会出现这个错误,是因为在加载工作簿时,需要将keep_vba=True作为第二个参数传递给load_workbook函数。

这就是你的load_workbook函数应该是什么样子:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
wb = load_workbook(filename="C:\\Users\\Mark\\Documents\\Test.xlsm", keep_vba=True)

顺便说一句,here是我的一篇文章,讨论了如何使用openpyxl从头开始创建.xlsm文件。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38173861

复制
相关文章
python处理Excel——openpyxl模块
该模块是Python中处理Excel的模块(这个模块只能处理.xlsx的Excel,如果是其它格式,请先转换为.xlsx格式。)。这个模块比起其它的处理Excel的模块,在使用上会方便很多。
zy010101
2021/05/18
1.1K0
openpyxl | Python操作Excel利器
一个excel文档就是一个工作簿 Workbook,每个工作簿对应可以有很多个表格sheet,每个表格页,由单元格组成。openpyxl通过操作这三个层级,完成对excel的操作。
测试邦
2019/08/23
2.1K0
openpyxl | Python操作Excel利器
python3 openpyxl操作excel
在日常工作中,避免不了需要操作excel文件的情况,如果还带有需要对excel的内容进行格式设定、合并单元格等需求,那么可以使用openxl来解决处理。
Devops海洋的渔夫
2019/10/10
2.8K0
python3 openpyxl操作excel
python openpyxl 常用excel样式 脚本
from openpyxl import Workbook from openpyxl.styles import Font from openpyxl.styles import NamedStyle, Font, Border, Side,PatternFill from openpyxl.styles import PatternFill, Border, Side, Alignment, Protection, Font
用户5760343
2022/05/13
4480
openpyxl:Python的Excel操作库
luckpunk
2023/09/27
7360
openpyxl:Python的Excel操作库
Python处理Excel文档之openpyxl
****openpyxl简介**** 还是简单一句:顾名思义,openpyxl就是一个处理excel文档的一个python库。 ---- ****openpyxl信息**** openpyxl地址传送 openpyxl依赖jdcal以及et_xmlfile依赖库 jdcal地址 et_xmlfile地址 ---- ****openpyxl安装**** #pip安装 sudo pip install openpyxl #源码编译 python setup.py install 对于如何使用pip安装
AlicFeng
2018/06/08
1.2K0
利用openpyxl处理Excel表格【Python】
记录了几个常用的操作 前提 创建名为d.xlsx文件、用到了其中的工作表【Sheet1】 使用到的库如下: from openpyxl import Workbook,load_workbook 一、xlsx 1.1、xlsx文件创建 wb = Workbook() sheet = wb.active #保存 wb.save('d.xlsx') 1.2、xlsx文件读取 wb = load_workbook('d.xlsx') sheet = wb['Sheet1'] 二、cell 2.1、查数据操作 w
来杯Sherry
2023/05/25
3350
excel怎么生成xml文件_Excel文件格式或扩展名无效
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/171962.html原文链接:https://javaforall.cn
全栈程序员站长
2022/09/23
9790
openpyxl 读写 excel
import openpyxl book = openpyxl.load_workbook('b.xlsx') # 读取 # sheet = book["name_tab"] sheet = book.active # row=sheet.max_row # 行数 column=sheet.max_column # 列数 print(row) print(column) for r in range(2, row+1): # 跳过表头,行号是从1开始的,列号是从0开始的 for c in range(
Michael阿明
2021/09/06
7830
Python-Excel-openpyxl-06-插入图片
系统:Windows 7 语言版本:Anaconda3-4.3.0.1-Windows-x86_64 编辑器:pycharm-community-2016.3.2 openpyxl:2.6.2
zishendianxia
2019/10/23
5K0
Python Excel操作新玩法:从零到高手掌握openpyxl
openpyxl是Python中一个强大的第三方库,用于操作Excel文件,它可以读取、写入和修改Excel文件,并且支持Excel文件中的样式、图表等元素。openpyxl使得在Python中处理Excel文件变得非常简单和高效。本文将从入门到精通地介绍openpyxl的使用方法,带你掌握在Python中处理Excel文件的技巧。
子午Python
2023/08/20
9280
python处理Excel(openpyxl模块的使用)
由于任务经常需要使用python处理Excel数据,记录下常用的python控制Excel的方法,备忘
用户7886150
2020/12/23
1.2K0
Python使用openpyxl模块读写excel文件
openpyxl是一个用于写入和读取xlsx格式的excel文件的Python模块。
Python碎片公众号
2021/02/26
4.7K0
Python使用openpyxl模块读写excel文件
Python openpyxl Excel绘制柱形图
大体内容翻译自官网 https://openpyxl.readthedocs.io/en/stable/charts/bar.html#vertical-horizontal-and-stacked-bar-charts
AnRFDev
2021/02/01
1.1K1
Python openpyxl Excel绘制柱形图
Python openpyxl 处理Excel使用指南
这是一份openpyxl的使用指南。 翻译自官网 https://openpyxl.readthedocs.io/en/stable/tutorial.html
AnRFDev
2021/02/01
1.2K0
Python笔记(十四):操作excel openpyxl模块
(一)  常遇到的情况         就我自己来说,常遇到的情况可能就下面几种: 读取excel整个sheet页的数据。 读取指定行、列的数据 往一个空白的excel文档写数据 往一个已经有数据的excel文档追加数据 下面就以这几种情况为例进行说明。 (二)  涉及的模块及函数说明 就我知道的,有3个模块可以操作excel文档,3个模块通过pip都可以直接安装。 xlrd:读数据 xlwt:写数据 openpyxl:可以读数据,也可以写数据 这里就就只说明openpyxl了,因为这个模块能满足上面的需要
free赖权华
2018/07/04
2.7K0
Python-Excel-openpyxl-09-向Excel中写入数据
系统:Windows 7 语言版本:Anaconda3-4.3.0.1-Windows-x86_64 编辑器:pycharm-community-2016.3.2 openpyxl:2.6.2
zishendianxia
2019/10/23
1.6K0
Python3 读取和写入excel xlsx文件 使用openpyxl
•win32com:不仅仅是excel,可以处理office;不过它相当于是 windows COM 的封装,新手使用起来略有些痛苦。
用户7886150
2020/12/23
3.2K0
点击加载更多

相似问题

使用excel函数和openpyxl python

13

Excel python openpyxl方法

3259

Python到Excel工作表的openpyxl [未优化]

10

Python使用openpyxl操作Excel

114

Excel来自Python (openpyxl)问题

13
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文