Python 如何扫描所有工作表单元格
我想使用Python 如何扫描所有工作表单元格,python,excel,win32com,Python,Excel,Win32com,我想使用win32com扫描python的excel表格单元格,并保存单元格位置及其值的字典 有没有一种有效的方法来扫描工作表?也就是说,扫描尽可能少的单元格,但仍然扫描所有具有数据/值的单元格,忽略远处的单元格 我以前使用的是openpyxl,它的参数是self.max\u row和self.max\u column。有没有类似的参数或计算它们的好方法?试试这样的方法怎么样 end_row = ActiveSheet.UsedRange.Rows.Count end_column = Acti
win32com
扫描python
的excel表格单元格,并保存单元格位置及其值的字典
有没有一种有效的方法来扫描工作表?也就是说,扫描尽可能少的单元格,但仍然扫描所有具有数据/值的单元格,忽略远处的单元格
我以前使用的是
openpyxl
,它的参数是self.max\u row
和self.max\u column
。有没有类似的参数或计算它们的好方法?试试这样的方法怎么样
end_row = ActiveSheet.UsedRange.Rows.Count
end_column = ActiveSheet.UsedRange.Columns.Count
如果你有一个非常大的范围,你计划通过,我会建议
尝试通过使用
一次将所有单元格转换为Python
我记录了我不久前遇到的一些事情
我先前写作的主要提示:
# Take many values at once rather than reading each individually
end_num = sh.UsedRange.Rows.Count
col_a = sh.Range(xl.Cells(1, 1), xl.Cells(end_num, 1)).Value
# The magic numbers to turn calculation on and off
xlCalculationManual = -4135
xlCalculationAutomatic = -4105
# Turn calculation to manual
xl.Calculation = xlCalculationManual
# Turn screen updating off
xl.ScreenUpdating = False
# RUN YOUR CODE HERE #
# Turn things back on when done
xl.ScreenUpdating = True
xl.Calculation = xlCalculationAutomatic
我曾经使用openpyxl,它有一个参数
self.max\u row
和self.max\u column
。是否有类似的参数或计算它们的好方法?为什么不直接使用openpyxl
?它不会保留工作簿验证程序和图像。此外,它不支持插入新行,并且在使用openpyxl
手动添加新行时,很难更新excel公式。我使用了last\col=xlApp.ActiveCell.SpecialCells(constants.xlLastCell)。Column
last\u row=xlApp.ActiveCell.SpecialCells(constants.xlLastCell).Row用于获取最后一个单元格。我将接受将一系列单元格导入pythonnot的建议。注意,您可以使用我在回答中提到的技术导入常量