MoonNote

반응형
     

 

 

 

엑셀 실습 파일

예제 코드 실행 후 생성

 

엑셀 파일 구성

예제 코드 01 실행 후 : 엑셀 파일 생성

cell_lock_example.xlsx

[A1] 셀 값 입력시 : 

[B1] 셀 값 입력시 :   

비밀번호 입력 후(잠금 해제) [A1] 셀 값 입력시 :   

 

예제 코드 02 실행 후 : 엑셀 파일 생성

▪advanecd_cell_lock_example.xlsx

 [A1] 셀 값 입력시 : 

 [B1] 셀 값 입력시 :  

 비밀번호 입력 후(잠금 해제) B열 값 입력시 :   

 

예제 코드 01 - 셀 잠금 설정

A1 셀 잠금, B1셀 잠금 해제

▪ Openpyxl의 ' Protection'을 사용하여 잠금 또는 잠금 해제 설정

시트 보호 설정을 위한 비밀 번호 입력 후 활성화

from openpyxl import Workbook
from openpyxl.styles import Protection

# 워크북 및 시트 생성
wb = Workbook()
ws = wb.active

# 셀 잠금 설정 (Protection 객체를 사용하여 설정)
ws["A1"].protection = Protection(locked=True)   # A1 셀 잠금
ws["B1"].protection = Protection(locked=False)  # B1 셀은 잠금 해제

# 시트 보호 설정 (비밀번호 필요)
ws.protection.set_password("1234")
ws.protection.enable()  # 시트 보호 활성화

# 파일 저장
wb.save("cell_lock_example.xlsx")

 

▪ 결과 값

엑셀 파일 구성 ' 예제 코드 01 실행 후 생성된 파일 정보' 이미지 참조

 

예제 코드 02 - 특정 열 잠금 설정

시트의 일부 셀만 수정 가능하고, 나머지 셀은 보호된 상태로 생성

첫 번째 열 전체를 잠금 해제하여 수정 가능하도록 설정

두 번째 열 전체는 잠금하여 수정이 불가능하도록 설정

시트 보호를 활성화하여 사용자가 보호된 셀을 수정하지 못하도록 만듬

 비밀번호로 보호 설정을 추가하여, 보호 해제 시 비밀번호가 필요

from openpyxl import Workbook
from openpyxl.styles import Protection

# 워크북 및 시트 생성
wb = Workbook()
ws = wb.active

# 시트 전체의 모든 셀을 잠금 해제 (기본적으로 엑셀 시트는 잠금 상태로 생성됨)
for row in ws.iter_rows(min_row=1, max_row=10, min_col=1, max_col=10):
    for cell in row:
        cell.protection = Protection(locked=False)

# 특정 열에 대해 보호 속성 설정
for row in range(1, 11):
    ws[f"A{row}"].protection = Protection(locked=False)   # A 열은 잠금 해제
    ws[f"B{row}"].protection = Protection(locked=True)    # B 열은 잠금

# 시트 보호 설정 (비밀번호 필요)
ws.protection.set_password("1234")
ws.protection.enable()  # 시트 보호 활성화

# 파일 저장
wb.save("advanced_cell_lock_example.xlsx")

 

▪ 결과 값

엑셀 파일 구성 ' 예제 코드 02 실행 후 생성된 파일 정보' 이미지 참조

 

 

Openpyxl 함수 모음

 

 

 

 

 

 

 

 

 

※ 이 글이 도움이 되었다면 "👆🏻구독"과 "🤍공감" 버튼을 클릭해주세요. 클릭 한번이 글 쓰는데 큰 힘이 됩니다.

공유하기

facebook twitter kakaoTalk kakaostory naver band