Tag: openpyxl

导出特定工作表,并保存不同的文件openpyxl

我试图从Excel文件中导出特定工作表,但没有结果。 我想将一张特定的纸张输出到一个全新的文件我写的是: import openpyxl book = openpyxl.load_workbook('C:\Python\test.xlsx') a = (book.get_sheet_names()) sheet1 = book[a[5]] sheet1.save('C:\Python\sheet2.xlsx') 另外,我不能做的另一件事,如果我有它的名字,找一张表。 我很抱歉,如果问题很简单,但是从我开始使用Python已经过去了几天:)

openPyXL – 在取消合并期间将值赋给单元格范围

所以我有excel文件,每个文件有几张,我正在处理脚本,它将从选定的表格收集数据,如果它们存在于文件中,并将它合并成一个大的表格。 一般来说,它正在工作,迭代通过文件,如果需要的工作表存在,它发现数据单元格的范围,并将其附加到数据框。 我现在需要做的事情是将标题行(列名称)添加到Dataframe,但在表单中是多行标题。 为了使它看起来在数据框中相同,我需要在顶部标题行中取消合并单元格,并将第一个单元格的值复制到先前合并的范围中的其余部分。 我使用OpenPyXL来访问Excel表。 我的function只接受表单作为参数。 它看起来像这样: def checkForMergedCells(sheet): merged = ws.merged_cell_ranges for mergedCell in merged: mc_start, mc_stop = str(mergedCell).split(':') cp_value = sheet[mc_start] sheet.unmerge_cells(mergedCell) cell_range = sheet[mergedCell] for cell in cell_range: cell.value = cp_value 事情是,cell_range返回一个元组,最终得到错误消息: AttributeError:“元组”对象没有属性“值”下面你可以看到debugging过程中的screencap显示了在每个variables中传递的值。 debugging器正在运行

保存date时间单元格后,pandas不会读取excel文件

我正在用pandas read_excel读取一个文件 df0 = pd.read_excel(cfname,'Calendari', index_col=0, parse_cols='A:R', converters={'Categoria':str,'Fase':str, 'Grupo':str, 'Jornada':str, 'Partido':str, 'IdPartido':str,'Leido':str}) df0.head() 输出是: Linea Categoria Fase Grupo Jornada Partido IdPartido Leido Data Hora 2 CCM 1 1 1 -1 NaN No Jornada 1 NaN 3 CCM 1 1 1 0 NaN No Data Hora 4 CCM 1 1 1 1 CCM110101 No 2017-09-30 00:00:00 […]

从csv转换为excel时错误的布局

我有下面的代码,但输出不正确显示。 任何想法,为什么这是造成这一点。 我在Linux中没有这个问题 我试图添加:encoding =“utf-8” 但是这并没有解决问题。 import csv import openpyxl wb = openpyxl.Workbook() ws = wb.active f = open('C:\HAHA.csv') reader = csv.reader(f, delimiter=':') for row in reader: ws.append(row) f.close() wb.save('C:\HAHA.xlsx')

用循环openpyxl iter_rows(min_row,max_row)

为什么iter_rows总是说must be str, not int ? 我只是试图把我的第一个值min_row和max_row 。 from openpyxl import load_workbook from itertools import islice wb = load_workbook('xyz.xlsx') ws1 = wb['Sheet1'] lst = ['2','2'] limit = 2 for i in islice(lst,limit): row = ws1.iter_rows(min_row=i,max_row=i) 我试着在这里finditer_rows min_row max_row铸造的想法,但是,我只是得到相同的错误和Worksheet object has no attribute 引用错误是 line 509, in iter_rows max_row += row_offset

通过不同长度的多个工作簿循环?

我有一些代码来循环多个工作簿: wb = load_workbook(fileName) for curTitle in wb.worksheets: ws = wb.get_sheet_by_name(name = curTitle.title) for row in ws.range('A1:C100'): for cell in row: #Do Something 但是,每个工作表的范围是不同的。 有没有办法让最后一行有数据?

openpyxl – 加载工作簿并保存,打开带有错误信息的保存文件

打开文件时出现错误信息: Excel在zz.xlsx中发现不可读的内容。 是否要恢复工作簿的内容?如果您信任工作簿的来源,请单击“是”。 如果我说“是”,popup显示“Repairs to zz.xlxs”。 任何人都可以帮助我。 什么格式的Excel可以造成这一点。 当我试图没有任何格式的示例工作簿,它工作正常。 我的代码: from openpyxl import Workbook from openpyxl import load_workbook #open existing workbook wb = load_workbook(filename = 'xx.xlsx') wb.save('zz.xlsx') 感谢你的帮助。 谢谢!

Python Openpyxl追加问题

我有数百个XML文件需要从Excel或CSV文件中提取和输出两个值。 这是我目前的代码: #grabs idRoot and typeId root values from XML files import glob from openpyxl import Workbook from xml.dom import minidom import os wb = Workbook() ws = wb.active def typeIdRoot (filename): f = open(filename, encoding = "utf8") for xml in f: xmldoc = minidom.parse(f) qmd = xmldoc.getElementsByTagName("MainTag")[0] typeIdElement = qmd.getElementsByTagName("typeId")[0] root = typeIdElement.attributes["root"] global […]

是否有可能使用openpyxl获取Excel表中的内容的行数?

我试过这样用, sheet.get_highest_row() 但产量是104578 我的Excel表格中只有3行。 我只需要selectExcel工作表中存在的行数

openpyxl从excel中提取值并存储在键值对中

已经编写了一个python脚本来获取单元格值并逐行显示在列表中。 这是我的脚本: book = openpyxl.load_workbook(excel_file_name) active = book.get_sheet_by_name(excel_file_name) def iter_rows(active): for row in active.iter_rows(): yield [cell.value for cell in row] res = list(iter_rows(active)) for new in res: print new 上述脚本的输出:[state,country,code] [abc,xyz,0] [def,lmn,0] 我想输出在以下格式:[状态:abc,国家:xyz,代码:0] [状态:def,国家:lmn,代码:0] 请注意:我想从openpyxl做到这一点