각 시트가 여러 장있는 파일을 Excel 파일로 가져와 파일에 존재하는 경우 선택한 시트의 데이터를 수집하고 하나의 큰 시트 . 일반적으로 파일을 반복 실행하고 원하는 시트가 있으면 데이터가있는 셀 범위를 찾아 데이터 프레임에 추가합니다. 지금해야 할 일은 헤더 행 (열 이름)을 Dataframe에 추가하는 것이지만, 시트에서는 여러 행의 헤더입니다.openPyXL - 병합 중에 셀 범위에 값 지정
데이터 프레임에서 동일하게 보이게하려면 맨 위의 행에있는 셀을 병합 해제하고 첫 번째 셀의 값을 이전에 병합 된 범위의 나머지 부분으로 복사해야합니다.
엑셀 시트에 액세스 할 때 OpenPyXL을 사용하고 있습니다. 내 함수는 매개 변수로 작업 할 시트를받습니다. 그것은 다음과 같습니다
def checkForMergedCells(sheet):
merged = ws.merged_cell_ranges
for mergedCell in merged:
mc_start, mc_stop = str(mergedCell).split(':')
cp_value = sheet[mc_start]
sheet.unmerge_cells(mergedCell)
cell_range = sheet[mergedCell]
for cell in cell_range:
cell.value = cp_value
것은 CELL_RANGE 오류 메시지가 점점에서 끝나는 튜플 반환한다는 것입니다 : 인덱스에 의해
AttributeError: 'tuple' object has no attribute 'value' Below you can see screencap during debug which shows values passed in each variable.