이미 데이터가있는 경우 마지막 열 + 2에 워크 시트에 쓰는 응용 프로그램이 있으며 워크 시트가 비어 있으면 마지막 열 +1에 응용 프로그램이 있습니다. 나는 다음과 같이 내가 생각하는 빈 워크 시트입니다 얻을 : 나는 sheet.max_row
및 sheet.max_column
할 때openpyxl에서 워크 시트가 비어 있는지 확인
from openpyxl.workbook.workbook import Workbook
book = Workbook()
sheet = book.active
, 나는 두 속성에 대한 1
얻을. 다음 나는 제로를 좀하고 싶습니다, 그래서 내가 할 : 셀의 값을 확인하는 데
if sheet.max_row == 1 and sheet.max_column == 1 and not sheet['A1'].value:
start_col = 1
else:
start_col = sheet.max_column + 2
는 오류가 발생하기 쉬운 말할 것도없고, 조금 잔인한 것 같다.
if sheet.max_column == 0:
start_col = 1
else:
start_col = sheet.max_column + 2
이유 max_row
가되고 max_column
항상 >= 1
입니다 : 내가 처음 일에 다음과 같은 기대? 이것은 버그, 의도적 인 기능 또는 다른 것의 합리적인 부작용입니까? 마지막으로 해결 방법이 있습니까 (예 : sheet.isempty()
). https://bitbucket.org/openpyxl/openpyxl/issues/514/cell-max_row-reports-higher-than-actual#comment-21091771 : 빈 셀에
행이 여전히 행되는 버그 추적기를 검색하는 동안 그런데
, 나는 다음과 같은 코멘트를 발견했다. 그들은 미래의 사용이나 다른 것들을 위해 포맷 될 수도 있습니다. 2.3은 경험적으로 약간 개선되었지만 여전히 빈 셀의 행을 포함합니다.
이 (그리고 내가 더 이상 링크를 찾을 수없는 또 다른 코멘트) 첫 번째 셀이 실제로 존재한다고 믿게합니다. 이 경우 기능 요청을 제출할 가치가 있습니까?