使用xlwt在excel上插入一个基于64的图像
您好,我在Odoo中工作,这可以保存所有图像,例如数据库上的Base64.我有代码,但是我正在做一个需要放置图像的Excel报告,Excel驱动程序是XLWT,但找不到一个不错的方法. image = product_id.image_smal (this is a base64) 在网络上,我发现了这个: xlwt.insert_bitmap('PATH', row, col) 和此: fh = open("imageToSave.png", "wb") fh.write(imgData.decode('base64')) fh.close() 我可以保存图像,但没有插入并给我这个错误: bitmap doesn't appear to to be a valid bitmap image. 感谢您的所有帮助. 解决方案 要将PNG转换为BMP,您需要: from PIL import Image img = Image.open
16 2024-03-27
编程技术问答社区
对于有超链接的单元格,OpenPyXL总是返回无。
(我的最终目的是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中工作. . 解决方案 不幸的是,这是一个错误
16 2023-12-20
编程技术问答社区
使用openpyxl或xl*或xlsxwriter在工作簿中移动工作表?
我已经阅读了文档, 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);这些模块似乎都没有这种方法. 默认值似乎在工作簿结束时添加表.我可以复制目标文件,直到达到更新的
36 2023-12-20
编程技术问答社区
使用Python编写一个Excel文件,其中有从另一个Excel文件复制的列
我有一个包含不同列数的excel文件,我想使用python循环通过该文件的某些列(来自其标题行值),然后将这些列写入(复制)到另一个Excel文件. 有什么例子有关我如何做到这一点? 解决方案 以下是一些选择: xlwt (写XLS文件) xlrd (阅读xls/xlsx文件) OpenPyXl (阅读/写作xlsx文件) xlsxwriter (写xlsx文件) 如果您只需要复制数据(不用格式化信息),则只需使用这些工具的任何组合来读取/写作即可.如果您有一个xls文件,则应使用XLRD+XLWT选项. 这是将第一行从现有Excel文件复制到新的简单示例: import xlwt import xlrd workbook = xlrd.open_workbook('input.xls') sheet = workbook.sheet_by_index(0) data = [sheet.cell_value(0, col) for col in
20 2023-12-20
编程技术问答社区
派斯-将表格从.doc/.docx-文件转换为.xls
我的任务是将一系列表从.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(Active
10 2023-12-20
编程技术问答社区
在python中使用xlrd、xlwt和xlutils从excel文件中删除行数
大家好,谢谢你. 我有一个python脚本,我在其中打开一个模板excel文件,添加数据(同时保留样式)并再次保存.我希望能够在保存新的XLS文件之前删除我没有编辑的行.我的模板XLS文件有一个页脚,所以我想在页脚之前删除多余的行. 这是我加载XLS模板的方式: self.inBook = xlrd.open_workbook(file_path, formatting_info=True) self.outBook = xlutils.copy.copy(self.inBook) self.outBookCopy = xlutils.copy.copy(self.inBook) 我然后将信息写入Outbook,同时从OutbookCopy获取样式并将其应用于我在Outbook中修改的每一行. 那么,在编写账面之前,如何从outbook中删除行?谢谢大家! 解决方案 我使用Pandas软件包实现了.... import pandas as pd
46 2023-12-20
编程技术问答社区
将多个以制表符分隔的.txt文件转换为多个.xls文件
我是Python的新手,我正在尝试使用上面显示的代码来做上述标题所说的.它一直延伸到我要求保存XLS输出的点.任何帮助都将不胜感激. import glob import csv import xlwt for filename in glob.glob("C:\xxxx\*.txt"): wb = xlwt.Workbook() sheet = wb.add_sheet('sheet 1') newName = filename spamReader = csv.reader(open(filename, 'rb'), delimiter=';',quotechar='"') for rowx, row in enumerate(spamReader): for colx, value in enumerate(row): sheet.write(rowx, colx, value) wb
10 2023-12-20
编程技术问答社区
Pyth-Excel。寻找一列中的第一条空行
从我的最后一个问题开始工作,我设法获得了大量的方式来完成我的系统.当然,我遇到了一个问题. 我基本上有一个玩游戏的程序.每个正确的答案将10个添加到全局变量"点"中.然后,我想将"点"添加到Excel电子表格中. 这是我被卡住的地方.我正在运行XLRD-0.8.0,Xlutils-1.4.1和XLWT-0.7.5. 当然我查找了不同的东西,但它们似乎对我不起作用. 这是我的代码的简化版本: import pygame, pygame.font, pygame.event, string, xlwt, xlrd, xlutils, socket points = 0 def Uploadpoints(wbname): global points wb = xlrd.open_workbook(wbname) # CODE TO FIND FIRST EMPTY CELL IN COLUMN 1 GOES HERE
14 2023-12-20
编程技术问答社区
如何使用python的xlutils、xlwt、xlrd删除excel文件中的一个现有工作表
我试图搜索许多位置,但DIT看不到有关如何使用Xlutils或python XLWT删除Excel文件中现有工作表的任何示例片段.谁可以帮助我? 解决方案 我只是处理了这个问题,尽管这通常不是一个不错的编码选择,但您可以使用内部 Workbook _Worksheets访问并为工作簿对象设置工作表. write_book._Workbook__worksheets = [write_book._Workbook__worksheets[0]] 这将剥离除工作簿相关的第一个工作表 之外的所有内容 其他解决方案 我只是想确认使用David给出的答案让我开始工作.这是我有一个电子表格(工作簿)的示例,其中有40张以上的纸,需要分为自己的工作簿.我复制了Master Workbook除了一张纸以外的所有内容并保存到了新的电子表格: : from xlrd import open_workbook from xlutils import copy workbook
42 2023-12-20
编程技术问答社区
Python Excel | 如何将工作表名称变成工作表编号
在此程序中,我在名为new_sheet的输入Excel文件上创建一个表. 我需要表格的表格,而不必查看Excel文件. 如何从程序中返回表格? import xlwt import xlrd import csv workbook = xlrd.open_workbook('input.xls') worksheet = workbook.add_sheet('new_sheet') 解决方案 如果您要计算excel文件中有多少张纸,或者如果您想知道,我不了解,请在哪个数字对应的情况下给出表格的名称; 无论如何,如果您要计算excel文件中有多少张纸,则可以以这种方式进行: workbook = xlrd.open_workbook('input.xls') worksheet = workbook.add_sheet('new_sheet') # number of sheet print workbook.nsheets 相反,如果您想知道可以
10 2023-12-20
编程技术问答社区
写入现有工作簿
我想知道是否有人可以帮助我解决这个问题.我想使用XLWT/XLRD/Xlutils更改现有的.xls文件.我看了看这个问题,并在底部尝试了两个答案这一页.当我尝试第二个答案时,我得到了这个错误: AttributeError: 'Sheet' object has no attribute 'cooked_page_break_preview_mag_factor' 当我尝试第三个答案时,我得到了这个错误: AttributeError: 'str' object has no attribute 'datemode' 我正在使用的文件与答案中的文件完全相同,但文件名除外. 我感谢任何帮助.我会评论答案,但我没有足够的代表. 解决方案 我有相同的错误,并意识到我正在复制工作簿而不是工作簿. rb = open_workbook(file_path,formatting_info=True) wb = copy(rb)
12 2023-12-20
编程技术问答社区
使用xlrd、xlwt和xlutils编辑现有的Excel工作簿
如何使用XLRD,XLWT和Xlutils模块将数据编辑和保存在现有的Excel工作簿中? 有人可以提供示例代码以编辑和保存数据中的数据吗? 我试图将数据从一个工作簿中放到另一个工作簿中. import xlrd, xlwt, xlutils wb1 = xlrd.open_workbook('workbook1.xls', formatting_info=True) wb2 = xlrd.open_workbook('workbook2.xls', formatting_info=True) value 1 == wb2.sheet_by_name('Sheet1).cell(2,1).value wb1.sheet_by_name('Sheet1').cell(2,2).value == value1 如何将这些数据保存在Workbook1.xls? 中 对不起,我以前问过这个问题,但我试图更清楚我的问题. 非常感谢. 解决方案 您可以用wb1
28 2023-12-20
编程技术问答社区
用xlrd在python中获取excel值的列表
我正在尝试阅读Excel表中的列中的值列表.但是,列的长度每次都不同,因此我不知道列表的长度.如何让Python读取列中的所有值并在使用XLRD的单元格时停止? 解决方案 for i in range(worksheet.nrows): 将遍历工作表中的所有行 如果您对0列感兴趣,例如 c0 = [worksheet.row_values(i)[0] for i in range(worksheet.nrows) if worksheet.row_values(i)[0]] 甚至更好地使其成为生成器 column_generator = (worksheet.row_values(i)[0] for i in range(worksheet.nrows)) 然后,您可以使用itertools.takes.用于懒惰的评估...如果您只想在获得第一个空价值 时停止,这将停止. from itertools import takewhile print
22 2023-12-20
编程技术问答社区
Eclipse XLRD, XLWT导入错误
我下载了最新的ENTHEUGH EPD PYTHON发行版(Academic),该发行版带有Python 2.7. 我正在使用日食作为我的IDE. 日食是为使用Python的实例.我在XLWT下运行了" Images.py"示例文件. " images.py": from xlwt import Workbook w = Workbook() ws = w.add_sheet('Image') ws.insert_bitmap('python.bmp', 0, 0) w.save('images.xls') 返回的日食: Traceback (most recent call last): File "C:\Documents and Settings\Username\workspace\XLRDXLWT\src\xlwt\images.py", line 1, in from xlwt import Workbook Imp
14 2023-12-20
编程技术问答社区
改变现有Excel工作簿中列的内容格式
我想在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
16 2023-12-20
编程技术问答社区
是否可以用Python在现有的工作簿中插入一个工作表?
问题 使用熊猫和python创建精美的报告. 建议的解决方案 使用模板XLSX文件,该文件包含一个模板表格,并通过引用了另一个预先填充的工作表,删除预填充的表格,然后从PANDAS插入新工作表.模板表将失去恢复到#REF的链接,因此需要重命名. 我尝试了: import os import xlrd, xlwt import envconfig swb1 = xlrd.open_workbook(os.path.join(envconfig.REPORT_WRITER_PATH,'TEMPLATE.xls'), on_demand=True, formatting_info=True) swb2 = xlrd.open_workbook(os.path.join(envconfig.REPORT_WRITER_PATH,'REPORT.xls'), on_demand=True, formatting_info=True) swb1s1 = swb1.shee
18 2023-12-20
编程技术问答社区
使用Python复制XLS的唯一工作表以成为新XLS中的新工作表?
使用下面的Python测试代码,我试图将Excel(*.xls)文件中唯一的工作表(*.xls)文件复制到一个带有一个工作表的新Excel文件中. 输入电子表格看起来像: from copy import deepcopy from xlrd import open_workbook from xlutils.copy import copy as copy from xlwt import Workbook rb = open_workbook(r"C:\Temp\test1.xls",formatting_info=True) wb = copy(rb) new_book = Workbook() r_sheet = rb.sheet_by_index(0) sheets = [] w_sheet = deepcopy(wb.get_sheet(0)) w_sheet.set_name("test1") for row_index in range(0, r_she
24 2023-12-20
编程技术问答社区
使用xlwt 'get_sheet'方法访问工作表
我想访问电子表格的工作表.我使用Xlutils.copy()将主工作簿复制到另一个工作簿.但是,不知道使用XLWT模块访问工作表的正确方法. 我的示例代码: import xlrd import xlwt from xlutils.copy import copy wb1 = xlrd.open_workbook('workbook1.xls', formatting_info=True) wb2 = copy(master_wb) worksheet_name = 'XYZ' (worksheet_name is a iterative parameter) worksheet = wb2.get_sheet(worksheet_name) 有人可以告诉我,使用XLWT模块在工作簿中访问现有工作表的正确命令行是什么?我知道我们可以使用'add_sheet'方法使用XLWT模块在现有工作簿中添加工作表. 任何帮助,感谢. 解决方案 您可以做sheets =
36 2023-12-20
编程技术问答社区
python:在xlrd中获取活动表? 以及在Python中读取和验证excel文件的帮助
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
18 2023-12-20
编程技术问答社区
Python Excel中的日期/时间读取问题
我正在尝试使用Python阅读Excel表的日期/时间,但是我只想在时间上阅读,以便我可以对其进行计算.例如,如果我有一个格式的日期:3/11/2003 4:03:00 AM 在我的Excel表上,我该如何仅在Python中阅读4:03:00?我最终希望能够及时减去小时,分钟或几秒钟. 解决方案 最好的选择是将日期转换为 dateTime 使用 xldate_as_tuple .假设您在A1中有一个test.xls 3/11/2003 4:03:00 AM的文件: from datetime import datetime, timedelta import xlrd book = xlrd.open_workbook(filename='test.xls') sheet = book.sheet_by_name('Sheet1') date = sheet.cell_value(0, 0) datetime_value = datetime(*xlrd.xldate_
8 2023-12-20
编程技术问答社区