相关疑难解决方法(0)

使用Python编程MS Office宏?

我最近把它作为一个教我自己如何用Python编程的项目.总的来说,我必须说我对它印象深刻.

在过去,我通常坚持使用VBA进行编程,主要是为了MS Excel(但也有点在MS Access和Word中),并且一直在努力寻找方法使其能够通过单个命令轻松完成Python所做的事情.

我想知道是否有合理的方法来利用Python的编程能力和易用性,同时利用Office中的各种工具(主要是Excel)?

python excel vba ms-office

27
推荐指数
4
解决办法
4万
查看次数

Python to excel,openpyxl 和文件格式无效

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

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()
Run Code Online (Sandbox Code Playgroud)

当文件打开并保存时,它提到文件格式无效/损坏且无法打开。如果 .xlsm 从 wb.save 中删除,它会在选择 excel with Open With 后保存并打开。为什么文件格式无效?

python openpyxl

8
推荐指数
2
解决办法
2万
查看次数

使用openpyxl将数据写入Excel工作表不起作用

使用openpyxl,我试图从Excel工作簿中读取数据并将数据写入同一个Excel工作簿.从Excel-Workbook获取数据工作正常,但将数据写入Excel-Workbook不起作用.使用下面的代码,我从Cell A1中获取值Sheet1并打印出来.然后,我尝试把一些值进入细胞A2A3.这不起作用.

from openpyxl import Workbook
from openpyxl import load_workbook


wb = load_workbook("testexcel.xlsm")
ws1 = wb.get_sheet_by_name("Sheet1")

#This works:
print ws1.cell(row=1, column=1).value 

#This doesn't work:
ws1['A2'] = "SomeValue1"

#This doesn't work either:
ws1.cell(row=3, column=1).value = "SomeValue2"
Run Code Online (Sandbox Code Playgroud)

我确信代码是正确的......这里出了什么问题?

python excel openpyxl

6
推荐指数
2
解决办法
2万
查看次数

标签 统计

python ×3

excel ×2

openpyxl ×2

ms-office ×1

vba ×1