본문 바로가기
Python/openpyxl

파이썬 openpyxl copy_range 함수 활용하기

by PySun 2024. 2. 10.
반응형

소개:

openpyxl은 파이썬에서 엑셀 파일을 다루는 강력한 라이브러리 중 하나입니다. 이 블로그 포스트에서는 openpyxl의 copy_range 함수를 사용하여 엑셀 시트의 데이터를 복사하는 방법에 대해 알아보겠습니다. 예시 코드를 통해 실제 활용법을 자세히 살펴보면서 더욱 효과적으로 활용하는 방법을 학습해봅시다.

copy_range 함수란?

copy_range 함수는 openpyxl 라이브러리에서 제공되는 함수 중 하나로, 엑셀 시트에서 특정 범위의 데이터를 복사합니다. 이를 통해 데이터를 다른 위치에 삽입하거나, 다른 시트로 복사할 수 있습니다.

copy_range 함수의 기본 사용법:

from openpyxl import Workbook
from openpyxl.utils import get_column_letter

# 새로운 워크북 생성
workbook = Workbook()

# 활성 시트 선택
sheet = workbook.active

# 데이터 입력
for row in range(1, 6):
    sheet.append([f'Data {row}', f'Value {row}', f'Extra {row}'])

# 데이터 복사 (예: B2부터 C4까지를 D5로 복사)
sheet.copy_range('B2:C4', to='D5')

# 저장
workbook.save('copy_range_example.xlsx')

copy_range 함수의 다양한 활용:

copy_range 함수를 사용하여 다양한 위치로 데이터를 복사할 수 있습니다.

  • 다른 시트로 데이터 복사:
# 다른 시트로 데이터 복사 (예: B2부터 C4까지를 다른 시트의 A1로 복사)
sheet.copy_range('B2:C4', to='Sheet2!A1')

copy_range 함수를 활용한 엑셀 데이터 조작 예시:

copy_range 함수를 사용하면 엑셀 파일에서 데이터를 원하는 위치로 효과적으로 복사할 수 있습니다. 아래 예시 코드는 데이터를 복사하여 출력하는 예시입니다.

from openpyxl import Workbook
from openpyxl.utils import get_column_letter

# 새로운 워크북 생성
workbook = Workbook()

# 활성 시트 선택
sheet = workbook.active

# 데이터 입력
for row in range(1, 6):
    sheet.append([f'Data {row}', f'Value {row}', f'Extra {row}'])

# 데이터 복사 (예: B2부터 C4까지를 D5로 복사)
sheet.copy_range('B2:C4', to='D5')

# 저장
workbook.save('copy_range_example.xlsx')

결론:

openpyxl의 copy_range 함수를 사용하면 파이썬 코드에서 엑셀 시트의 데이터를 효과적으로 복사할 수 있습니다. 위의 예시 코드를 참고하여 자신의 프로젝트나 업무에 적용해보세요. 데이터를 다른 위치로 복사하여 엑셀 파일을 더욱 유연하게 다룰 수 있을 것입니다.

반응형