我有一个Excel文件,其中包含一个文本框内的一些数据。目标是读取该文件,因为它是与行号完好无损。我不想读文本框里的内容。当我使用readxl和openxlsx包读取文件时,所有带文本框的行都被跳过。
例如,在所附的图像中,当我读取文件时,dataframe仅包含第9至14行。excel中的第9行是dataframe中的第1行。是否有任何方法可以读取文件,使我的 Dataframe 也有14行。前8行是否包含任何值并不重要。
testEmptyRow1 <- openxlsx::read.xlsx(filtered_list[1], skipEmptyRows=FALSE)# not working
R将文件读取为-
编辑2我不想从文本框中读取内容。我们的目标是在 Dataframe 中有相同数量的行。如果前8行是空的或具有空值,请参见所附图像,这无关紧要。
3条答案
按热度按时间a7qyws3x1#
我已经能够使用以下函数从Excel文本框中提取文本:
a8jjtwal2#
Excel xlsx文件实际上是xml文件的压缩集合。我没有Excel,因为M@#$%^&S是混蛋,当我的一个硬盘驱动器在我的系统上崩溃时,不让我恢复安装,但当我将一个包含文本框的LibreOffice文件保存为Unix机器上的xlsx文件时,我可以解压缩它并看到以下内容:
drawing1.xml文件的内容在框中包含文本“This is a test”:
我非常怀疑R包中是否有读取Excel文件的函数,这些函数旨在从此类文本框中提取文本内容。但是稍微搜索一下就会引出一个扩展的讨论,可能会给予你一些线索:
https://community.rstudio.com/t/best-r-package-to-create-textboxes-in-ms-excel/947/10
这里有几个链接,展示了如何在不同的语言中做到这一点,但有足够的细节来帮助聪明的用户:
How to read the text in textbox by using openpyxl
https://social.msdn.microsoft.com/Forums/office/en-US/874624c6-c923-4f2f-a60e-333bc9f24949/looking-for-code-to-update-a-textbox-on-a-spreadsheetml-doc-client-using-vbnet-but-i-can-read-and?forum=oxmlsdk
nimxete23#
下面是另一种可以考虑在第一个Excel工作表中提取文本框的方法: