从Excel文件导入单元格格式信息到R中

9

我收到了一些Excel文件(.xlsx),其中单元格的格式是我需要捕捉的相关信息。感兴趣的关键格式有两种:(1)单元格颜色和(2)边框(左+右,全框或缺失)。

是否可能将其读入R中?


2
尝试使用 XLConnect 包中的 getCellStyle - joran
谢谢@Joran,我没意识到它被称为样式而不是格式。我会看一下的。 - Ricardo Saporta
5
你应该教育制作这些文件的人更安全地记录数据的方法... - Roland
2个回答

6
这是一个非常古老的问题,但在搜索中仍然出现,因此我认为指向 tidyxl 包对人们很有用。 tidyxl::xlsx_cells() 将 Excel 电子表格读入数据框,其中每行表示电子表格的单个单元格,包括其地址(例如 A1)、内容和属性。 tidyxl::xlsx_formats() 返回 Excel 电子表格中所有不同单元格格式的嵌套列表。
xlsx_cells() 返回的数据框中的 local_format_id 列允许您在由 xlsx_formats() 返回的列表中查找每个单元格的格式信息。
更多信息请参见 tidyxl 包文档

难以置信这个问题竟然没有得到回答六年之久! - Ricardo Saporta
好的,tidyxl包直到2017年才存在,但现在我认为它是处理R中Excel单元格格式最简单的方法,尽管不幸的是它只支持.xlsx而不是.xls。 - qdread
3
不幸的是,这仍然只是解决方案的一半。Tidyxl将读取数据并允许通过dput/rda存储和再现数据,但没有任何编写Excel工作簿的内容会使用该数据。XLConnect和openxlsx将编写Excel工作簿,但无法“可移植”地存储格式信息,您必须携带.xlsx文件。 - D3SL

0

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接