Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/vim/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 读取大型excel表格(猜测大小)_Python_Excel_Vba_Com_Pywin32 - Fatal编程技术网

Python 读取大型excel表格(猜测大小)

Python 读取大型excel表格(猜测大小),python,excel,vba,com,pywin32,Python,Excel,Vba,Com,Pywin32,我正在使用pywin32读写excel。现在我知道的唯一方法是访问Range.Value,但我通常事先不知道完整excel表的大小。 所以现在我一行一行地读,直到我找到一个完全空的行。这可能相当缓慢 当然,我会尝试一些技巧,比如读取数据块,然后我必须找到一个最佳的块大小 您知道其他更快的方法(可能是一些内部excel函数)或其他方法吗?如何使用属性获取整个范围?您可以使用它打开工作簿并读取特定工作表的大小。相当快 提示:book=xlrd.open\u工作簿(“myfile.xls”)然后通过S

我正在使用pywin32读写excel。现在我知道的唯一方法是访问Range.Value,但我通常事先不知道完整excel表的大小。 所以现在我一行一行地读,直到我找到一个完全空的行。这可能相当缓慢

当然,我会尝试一些技巧,比如读取数据块,然后我必须找到一个最佳的块大小


您知道其他更快的方法(可能是一些内部excel函数)或其他方法吗?

如何使用属性获取整个范围?

您可以使用它打开工作簿并读取特定工作表的大小。相当快

提示:
book=xlrd.open\u工作簿(“myfile.xls”)
然后通过
Sheet=book.Sheet\u-by\u索引(sheetx)
Sheet=book.Sheet\u-by\u名称(Sheet\u名称)
获得Sheet对象,并且您拥有
Sheet.nrows
属性以及给定工作表中的行数


以下是文档。

在VBA中,我们经常使用
End
语句,如下所示:

Worksheets("sheet1").Cells(Rows.Count, "A").End(xlUp).Row

这可能会帮助您找到列中最后使用的单元格(但我不知道如何将此方法扩展到
pywin

谢谢。这可能有用。顺便说一句,在pywin中,这一切都是一样的——可能不知怎么映射:)有趣。它是否像最大填充行?如果工作表上只有一个表,它可能会起作用:)@Gerenuk:当您想要选择工作表中的所有内容时,它非常有用。如果您有许多表,则范围将包括所有表。