由于某些编码难度,我无法导出我的数据范围之一. sjM.dtypes Customer Name object Total Sales float64 Sales Rank float64 Visit_Frequency float64 Last_Sale datetime64[ns] dtype: object CSV导出效果很好 path = 'c:\\test' sjM.to_csv(path + '.csv') # Works 但是Excel导出失败 sjM.to_excel(path + '.xls') Traceback (most recent call last): File "", line 1, in File "testing.py", line 338, in
以下是关于 xlwt 的编程技术问答
在熊猫数据框架中,我有一些"单元格",其中一些需要包含Excel公式.我读过,我可以用 获得公式 link = 'HYPERLINK("#Groups!A' + str(someInt) + '"; "LINKTEXT")' xlwt.Formula(link) 并将它们存储在数据框架中. 当我尝试将数据框保存为 的XLSX文件时 writer = pd.ExcelWriter("pandas" + str(fileCounter) + ".xlsx", engine = "xlsxwriter") df.to_excel(writer, sheet_name = "Paths", index = False) # insert more sheets here writer.save() 我得到错误: TypeError: Unsupported type in write() 因此
有没有一种方法可以使特定的单元格在python xlwt中受到保护? 我知道有一个cell_overwrite_ok标志,它不允许覆盖单元格(所有单元格),但可以按细胞基础上进行. 谢谢 太阳 解决方案 Excel单元具有锁定属性,默认情况下启用.但是,仅当工作表的 Protection 属性也设置为True时,才调用此属性.如果不保护工作表,则忽略锁定属性. 因此,您的问题不是最好地构建为如何使单元读取的单元格.相反,问题是如何在保护工作表. 之后如何使细胞编辑 ...您是: from xlwt import Workbook, Worksheet, easyxf # ... # Protect worksheet - all cells will be read-only by default my_worksheet.protect = True # defaults to False my_worksheet.password = "so
我每天都有4个.CSV文件.我将解析的CSV文件的输出保存为4个单独的.xlsx工作簿.我的目标是将所有4个工作簿合并到一个XLSX工作簿中,每个工作簿都包含在其自己的选项卡/工作表中. 我已经读到了许多使用OpenPyXl,XLWT和XLWriter在其他人的版本中完成此操作的方法,而我只是感到困惑,并寻求适当方式的专家的指导,以使我的特定应用程序为这项工作. . 我用4个工作表/选项卡创建了工作簿,但是当我尝试使用工作表名称写入选项卡时,它似乎正在覆盖我以前所做的一切,而我只是不知道如何修复它?非常感谢任何帮助或指导! import pandas as pd import openpyxl import csv from openpyxl import Workbook # this creates an xlsx workbook with 4 worksheets wb = Workbook() dest_filename = 'Drop Offenderss
(我的最终目的是append clickable cells to existing XLSX.) 我使用下面的代码提取单元格的显示值和超链接. from openpyxl import load_workbook xlsFile='hello.xlsx' wbook = load_workbook(xlsFile) wsheet1= wbook.get_sheet_by_name('mysheet') cell1 = wsheet1.cell('A1') print cell1.value print cell1.hyperlink print wsheet1['A1'].value print wsheet1['A1'].hyperlink 但它返回以下内容: URL1 None URL1 None 为什么hyperlink总是None?我确实为单元A1手动添加了超链接,并且超链接在Excel 2013中工作. . 解决方案 不幸的是,这是一个错误
我想在Excel工作簿中更改内容的格式. 环境:赢7; Python 2.76 我想将列A,B和C更改为所需的格式.我所拥有的: from openpyxl import Workbook from openpyxl import load_workbook wb = load_workbook('c:\\oldfile.xls') ws = wb.active d = ws.cell(column = 0) # or 1, 2, 3 d.style = Style(font=Font(bold=False), borders=Borders(left=Border(border_style='none'), right=Border(border_style='none'), top=Border(borde
2个要问的问题: ques 1: 我刚刚开始研究 xlrd 用于阅读Python中的Excel文件. 我想知道xlsrd中是否有一种方法 - >类似于get_active_sheet() openpypyxl 或其他任何获取活动表的方法? get_active_sheet()在openpyxl 中工作 import openpyxl wb = openpyxl.load_workbook('example.xlsx') active_sheet = wb.get_active_sheet() 输出:工作表" Sheet1" 我在xlrd中找到了用于检索床单名称的方法,但是它们都不能告诉我活动表. ques 2: 是xlrd python中最好的包装?我还遇到了 this 有有关其他python套件的信息(xlsxwriter xlsxwriter xlwt xlutils )用于阅读和编写Excel文件. 上面的哪一个最适合制作读取Ex
我试图寻找它,但找不到.是否有可能使用OpenPyXl或XLWT模块来调整MM或CM尺寸中Excel中的细胞高度,宽度?如果是,那么有人可以将我指向脚本的命令吗?多谢. 解决方案 带有openpyxl 设置列宽: #setting width of column B to 12.25 sheet.column_dimensions['B'].width = float(12.25) 设置行高度: #setting height of row 3 to 33.75 sheet.row_dimensions[3].height = float(33.75) 隐藏柱和行 使用尺寸,我们也可以隐藏行和列: #Hiding Column B sheet.column_dimensions['B'].hidden = True 和行 #Hiding Row 3 sheet.row_dimensions[3].hidden = True
我已经阅读了文档, opentpypyxl href =" https://media.readthedocs.org/pdf/xlwt/latest/xlwt.pdf" rel =" noreferrer"> xlwt , xlrd , xlsxwriter "> xlsxwriter "> xlsxwriter "> xlsxwriter "> xlsxwriter .我找不到在 Excel Workbook 中移动工作表的方法.测试将工作表添加到末端. 具体而言,我有一种日历,['JAN','FEB',...,'DEC'],我需要在需要时替换几个月. 如果您不移动,您如何在Excel工作簿中订购床单?在指定的表格之前,您可以在或之后插入吗? 只有另一个我可以在so so so so 上找到 C1>和Book.Worksheets.Add(After=Sheet);这些模块似乎都没有这种方法. 默认值似乎在工作簿结束时添加表.我可以复制目标文件,直到达到更新的
我制作了一个打开.xls文件的脚本,其中写了一些新值,然后保存文件. 后来,脚本再次打开它,并希望在包含公式的某些单元格中找到答案. 如果我用openpyxl调用该单元格,我会得到公式(即:"=A1*B1"). 如果我激活data_only,我什么都没有. 有没有办法让python计算.xls文件? (还是我应该尝试pyxll?) 解决方案 实际上有一个项目可以采用Excel公式并使用Python:不是真正为公众开发. 还有一个较新的项目,称为 koala 均建立在pycel和openpypyxl上. 另一种方法,如果您不能使用Excel,但是您 can 计算公式的结果(在Python代码中),是将值和公式同时写入单元格(因此,当您读取文件时,您可以提取值,而不必担心公式).截至撰写本文时,我还没有找到一种在OpenPyXl中进行的方法,但是 XLSXWriter不会计算公式的值,而是将值0作为公式结果存储.然后,它在XLSX文件中设置了一个全局标志
我计划在下面使用两个库之一输出python中的excel文件: xlwt( openpyxl( 我尝试了第一个,大多数事情似乎很好,但是一个问题,不幸的是,它可能无法支持将多种格式应用于单元格的能力. (请参阅 excel/browse_thread/thread/11c24606d9b2914d ) 是真的吗? 如果是,有人知道如何解决吗? 下面的照片是我想做的示例.您可以以常规文本样式看到彼得和费尔南多的彼得. 解决方案 xlrd和xlwt的SVN版本都支持" Rich Text",这是您想要的MS Jargon. 其他解决方案 我还有另一个答案,该答案说明了如何使用OpenPyXl应用许多格式化样式... 在OpenPyXl中设置样式
我正在寻找使用OpenPyXl将行插入电子表格的最佳方法. 有效地,我有一个电子表格(Excel 2007),该电子表格具有一个标题行,其次是(最多)(最多)数千行数据.我希望将行插入实际数据的第一行,因此在标题之后.我的理解是,附加函数适合将内容添加到文件的末尾. 阅读openpyxl和xlrd(和xlwt)的文档,我找不到任何明确的剪切方法的方法,而不是手动浏览内容并插入新的表(插入所需的行之后). 鉴于我到目前为止对Python的经验有限,我试图理解这是否确实是最佳选择(最Pythonic!),如果有人可以提供明确的例子.我可以使用OpenPyXl读写行,还是必须访问单元格?另外,我可以(通过)编写相同的文件(名称)? 解决方案 用我现在用来获得所需结果的代码回答此问题.请注意,我正在手动插入位置1处的行,但这应该很容易适应特定需求.您也可以轻松地调整此内容以插入多个行,只需从相关位置开始填充其余数据. 另外,请注意,由于下游依赖关系,我们正在手动指
我正在写一个Python脚本,并陷入了早期步骤之一.我正在打开现有的工作表,并想添加两列,所以我已经使用了以下内容: #import the writer import xlwt #import the reader import xlrd #open the sussex results spreadsheet book = xlrd.open_workbook('sussex.xlsx') #open the first sheet first_sheet = book.sheet_by_index(0) #print the values in the second column of the first sheet print first_sheet.col_values(1) #in cell 0,0 (first cell of the first row) write "NIF" sheet1.write(0, 6, "NIF") #in cell 0,0 (firs
如何在Python中使用XLWT或XLRD找到行总数?我有一个Excel文件(accounts.xls),并希望在其中附加行. 我在这里遇到错误-AttributeError:'Sheet'对象没有属性'写' from xlrd import open_workbook from xlwt import Workbook def saveWorkSpace(fields,r): wb = open_workbook('accounts.xls') ws = wb.sheet_by_index(0) r = ws.nrows r += 1 wb = Workbook() ws.write(r,0,fields['name']) ws.write(r,1,fields['phone']) ws.write(r,2,fields['email']) wb.save('accounts.xls') pri
我试图应用一种样式,如果其中一列包含"资产"的值,则可以突出显示整个行.下面的代码将仅突出显示其中包含"资产"的列,而不是整个行.有没有办法将样式应用于整个行? for row in csv_input: #Iterate through each column for col in range(len(row)): #Apply different styles depending on row if row_count == 0: sheet.write(row_count,col,row[col],headerStyle) elif row_count == 3: sheet.write(row_count,col,row[col],subheadStyle) elif "Assets" in row[col
我有一个列标题费用.在 python 中使用 xlwt ,我成功地生成了所需的excel.此列在创建Excel文件时始终是空白的. 是否可以将费用列预制到"货币"和"两个小数点",以便当我在Excel的 fee 列中手动写作时下载后文件, 23 应该更改为 $ 23.00 ?? 解决方案 我像这样工作了: currency_style = xlwt.XFStyle() currency_style.num_format_str = "[$$-409]#,##0.00;-[$$-409]#,##0.00" sheet.write(row+2, col, val, style=currency_style)
我有多个文本文件,其中包含以下信息: Agilent Technologies, Inc. Date|Previous Close|Open|Day Low|Day High 2017-02-12|$50.47|$50.51|$50.02|$50.59 每个文本文件均由其ticker命名,该文件位于文本文件master.txt的新线路上.我想要一个工作簿,其中每个表上的数据应由ticker命名,因此我使用以下代码: import xlwt textfile = "C:/Python27/SublimeText/Stocks/Master/Excel.txt" with open("master.txt", 'r') as f: tickers = [line.rstrip('\n') for line in f] def is_number(s): try: float(s) return True except
例如, 如何更改以下行,以使"测试"是可变t和" http://google.com "可变l? 是 ws.write(0, 0, xlwt.Formula('"test " & HYPERLINK("http://google.com")')) 解决方案 尝试以下方法: T = 'test' L = 'http://google.com' formula = '"{} " & HYPERLINK("{}")'.format(T, L) ws.write(0, 0, xlwt.Formula(formula)) 这使用"test " & HYPERLINK("http://google.com") 也可以在不使用临时变量的情况下进行操作: ws.write(0, 0, xlwt.Formula('"{} " & HYPERLINK("{}")'.format(T, L))) 更新 上面的代码回答了所述的问题,但是,OP实际上要求将"测试"显
我的任务是将一系列表从.doc和.docx-files转换为.xls, ,但尚未设法找到有效的方法来做到这一点.表可以在其他文本之间. 我已经研究了pywin32, xlwt和其他几个库,但似乎我必须经过很多步骤. 此表从*.doc/*.docx转换为*.xls文件的任何提示? 解决方案 我假设您的复制/粘贴文档太多,并寻求务实的解决方案以供内部使用.此解决方案: 在批处理模式下以单词打开文件 您可以编写一个小脚本以将所有标签从html 切割出来 将文件保存在HTML中,但使用.xls扩展名 默认情况下,HTML文件将在Excel中打开,您只需单击警告. 在这样的单词中创建一个宏: Sub BatchSaveAs() ' Set output_dir appropriately ChangeFileOpenDirectory "output_dir" outDocName = Left(ActiveDocumen