我正在尝试阅读Excel表格(xlsx),该表格使用背景色来区分值。
我尝试了以下库:
xlrd。
import xlrd
xlrd.open_workbook("filename.xlsx", formatting_info=True)
它给出错误为: NotImplementedError:formatting_info = True尚未实现。
StyleFrame(由DeepSpace建议:在Excel工作表中根据单元格颜色和文本颜色设置数据框 )
from StyleFrame import StyleFrame, utils
sf = StyleFrame.read_excel('filename.xlsx', read_style=True, use_openpyxl_styles=False)
它给出错误为:
Traceback (most recent call last):
File "proj_path/read_excel.py", line 22, in <module>
sf = StyleFrame.read_excel('filename.xlsx', read_style=True, use_openpyxl_styles=False)
File "C:\Anaconda\lib\site-packages\StyleFrame\deprecations.py", line 22, in inner
return func(*args, **kwargs)
File "C:\Anaconda\lib\site-packages\StyleFrame\style_frame.py", line 220, in read_excel
_read_style()
File "C:\Anaconda\lib\site-packages\StyleFrame\style_frame.py", line 209, in _read_style
read_comments and current_cell.comment)
File "C:\Anaconda\lib\site-packages\StyleFrame\styler.py", line 127, in from_openpyxl_style
font_color = theme_colors[openpyxl_style.font.color.theme]
TypeError: list indices must be integers or slices, not Integer
任何能帮助我朝正确方向发展的建议都将受到高度赞赏。
答案 0 :(得分:0)
即使通过Python可能实现,最简单的方法应该是在Excel中通过Color进行过滤,复制该Table并将其粘贴到其他位置,然后像使用任何带有Pandas的Excel文件一样将其导入。
如DeepSpace所评论,它以前是通过Python编写的,但这很麻烦