- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我是 Python 的新手,正在从事我的第一个项目。我试图让我的代码从一个电子表格中复制数据列并将其附加到当前存在于主表中的数据。我能够捕获每张工作表中的数据并创建一个结合了两个数据集的新主列表,但我无法将其写入文件。当我测试打印组合列表时,它们看起来是正确的,但是当我添加代码以将列表写入文件时,它被挂断了。
您能提供的任何帮助都将非常有帮助!
下面是我的代码。这是我遇到的错误
Traceback (most recent call last): File "/Path/Path/Path/extractData.py", line 50, in destSheet.cell(row=rowNum, column=1).value = masterList1
File "/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/site-packages/openpyxl/cell/cell.py", line 313, in value self._bind_value(value)
File "/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/site-packages/openpyxl/cell/cell.py", line 217, in _bind_value raise ValueError("Cannot convert {0} to Excel".format(value))
ValueError: Cannot convert ['Reinsurer', 'Market 1', 'Market 2', 'Market 3', 'Market 4', 'Market 5', 'Market 1', 'Market 2', 'Market 3', 'Market 4', 'Market 5', ['Market 1', 'Market 2', 'Market 3', 'Market 4', 'Market 5']] to Excel
import openpyxl
#Open source data file
sourceFile = openpyxl.load_workbook('/Path/Path/Path/testAuth.xlsx')
sourceSheet = sourceFile.get_sheet_by_name('Sheet1')
#read data from source file and create lists of new data
newList1 = []
newList2 = []
newList3 = []
for row in range(2, sourceSheet.get_highest_row()):
data1 = sourceSheet['A' + str(row)].value
newList1.append(data1)
data2 = sourceSheet['B' + str(row)].value
newList2.append(data2)
data3 = sourceSheet['C' + str(row)].value
newList3.append(data3)
#open destination workbook that includes the master database
destFile = openpyxl.load_workbook('/Path/Path/Path/testHist.xlsx')
destSheet = destFile.get_sheet_by_name('Sheet1')
#create empty lists for copying the historical data already in the workbook
masterList1 = []
masterList2 = []
masterList3 = []
#grab master spreadsheet data and write to list
for row in range(1, destSheet.get_highest_row()+1):
masterData1 = destSheet['A'+ str(row)].value
masterList1.append(masterData1)
masterData2 = destSheet['B'+ str(row)].value
masterList2.append(masterData2)
masterData3 = destSheet['C'+ str(row)].value
masterList3.append(masterData3)
#append new data to the history list
masterList1.append(newList1)
masterList2.append(newList2)
masterList3.append(newList3)
#write new master list to a new file
for rowNum in range(2, len(masterList1)):
destSheet.cell(row=rowNum, column=1).value = masterList1
destSheet.save("updatedTest.xlsx")
最佳答案
不是将每个单元格的值分配给 masterList1
,您可能打算使用 masterList1[rowNum]
作为值:
for rowNum in range(2, len(masterList1)):
destSheet.cell(row=rowNum, column=1).value = masterList1[rowNum]
另外,正如@mgrant 指出的那样,您之前应该扩展(而不是附加)主列表:
masterList1.extend(newList1)
关于Python openpyxl 将列表写入 Excel 报错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31236282/
有没有办法使用 openpyxl 折叠多行?似乎没有与 openpyxl simple usage page 上的示例等效的行。 import openpyxl wb = openpyxl.Workb
我有一个应用程序,如果已经有数据,我将工作表写入最后一列 + 2,如果工作表为空,则写入最后一列 + 1。我得到了我认为是空的工作表,如下所示: from openpyxl.workbook.work
我有一个应用程序,如果已经有数据,我将工作表写入最后一列 + 2,如果工作表为空,则写入最后一列 + 1。我得到了我认为是空的工作表,如下所示: from openpyxl.workbook.work
当我从 openpyxl-2.5.12 升级到 openpyxl-3.0.3 时,我开始收到以下错误: C:\workspace\venv_py37_64\lib\site-packages\open
我可以使用以下代码创建垂直条形图: from openpyxl import Workbook wb = Workbook() ws = wb.active for i in range(10):
我对 openpyxl 库有疑问。 问题: 当我使用 xlwt,打开一个 .xls 文件,并在其中写入一些单元格时,我没有触及的单元格的样式保持不变。但现在我必须处理 xlsx 文档,所以我选择了 o
我想将Excel中的数据添加到词典中。但是,当我使用.append(TOTAL_SALES)时出现错误,当然,如果我使用+=TOTAL_SALES,则没有问题,只是我获得的是总和,而不是3个单独月份的
我想将Excel中的数据添加到词典中。但是,当我使用.append(TOTAL_SALES)时出现错误,当然,如果我使用+=TOTAL_SALES,则没有问题,只是我获得的是总和,而不是3个单独月份的
如何更改excel单元格数字格式General至Text不考虑单元格中的数据? 我正在使用 openpyxl 1.8.6。 最佳答案 我知道这个问题真的很老了,但它仍然可能是相关的,因为我在谷歌搜索同
我正在其中一个 Excel 工作表中打印一些公式: wsOld.cell(row = 1, column = 1).value = "=B3=B4" 但我不能使用它的结果来实现其他一些逻辑,如: if
如何使用openpyxl将数据表添加到图例区域如下图所示: openpyxl 中有一个 openpyxl.chart.chartspace.DataTable 类,但我找不到任何示例来使用它。 最佳答
如何使用openpyxl从Excel中的命名范围读取值? 我在http://openpyxl.readthedocs.org/en/latest/_modules/openpyxl/workbook/
请有人给我一个例子,如何复制 带有样式的整个工作表(来自行和列) 到同一工作簿中的第二个工作表? (也可以在新工作簿中) 谢谢。 P.S .:我尝试进行深度复制,但是在保存更改的数据单元时失败了。 目
我有以下函数,可以使用 openpyxl 库从 excel 工作簿中读取数据: import openpyxl def read_excel(path): excel_workbook = o
我有大量 Excel 文件,我只想处理未隐藏的工作表,我想忽略所有隐藏的工作表。 目前我的 python 脚本循环遍历每张纸,无论它是否被隐藏。有没有一种简单的方法来检查工作表是否被隐藏? 我在网上看
我需要做什么: 在 Python/Pandas 中打开 Excel 电子表格 使用 [name, balance] 创建 df 例子: 姓名 平衡 琼斯事工 45,408.83 史密斯事工 38,59
我正在创建一个程序,使用 python 和 openpyxl 将所有单个引号移动到一个单引号矩阵中,但是当尝试加载模型信息时,它似乎是从第一个引号重复模型。每个报价都是一个单独的 excel 文件,这
我有一个在 openpyxl 中打开并清理它并关闭工作簿的 excel 文件,示例代码如下: #filename is the name of the excel file used wb = loa
我正在使用 openpyxl库在电子表格上执行一些 excel 剪切/粘贴操作。 假设我的操作产生了以下数据(请将其用于重现性目的): col1;col2 1;0,17153686 2;0,61532
我想写一个新的工作簿,一张纸,然后在这张纸上添加一个表格。 AFAIK 应该是可能的,这个提交应该做到 https://bitbucket.org/openpyxl/openpyxl/commits/
我是一名优秀的程序员,十分优秀!