본문 바로가기
IT/Python

[파이썬] 엑셀 셀값 입력, 출력 / for ~in 반복 입력문

by 베베야 2021. 11. 18.
728x90

파이썬 코드을 이용하여 엑셀시트 셀에 데이터를 입력하고 입력한 데이터를 가져와서 출력하는 방법에 대해서 알아보겠습니다. 추가로 for 반복문을 이용해서 여러 데이터를 입력하는 방법도 알아보겠습니다.

 

파이썬 설치 및 관련 필수 프로그램 설치는 아래를 참조하세요.

▶파이썬 설치방법 및 필수 프로그램 설치방법 바로가기

 

먼저 시트명이 bebeSheet인 엑셀파일을 test.xlsx 파일명으로 생성합니다.

from openpyxl import Workbook
wb = Workbook()
ws = wb.active
ws.title = "bebeSheet"

wb.save("test.xlsx")

 

1. 셀 데이터 입력 및 출력

생성된 엑셀 시트의 셀에 데이터를 입력하는 방법입니다.

# A1~A2 셀에 값을 입력
ws["A1"] = 1
ws["A2"] = 2
ws["A3"] = 3

# B1~B2 셀에 값을 입력
ws["B1"] = 4
ws["B2"] = 5
ws["B3"] = 6


#######셀 값 출력#####
print(ws["A1"]) #A1 셀의 객체 정보를 출력
print(ws["A1"].value) #A1 셀의 값을 출력
print(ws["A5"].value) #A5 값은 없으니 none 출력됩

 

아래와 같이 셀 번호로도 출력이 가능하며 특정변수에 값을 입력받아 출력도 가능합니다.

#row = 1, 2, 3 ..
#column = A(1), B(2), C(3) ...
print(ws.cell(column=1,row=1).value) # print(ws["A1"].value) 동일
print(ws.cell(column=2,row=1).value) # print(ws["B1"].value) 동일

c = ws.cell(column=3,row=1, value=10 ) #C1셀에 숫자 10을 입력하여 C 변수에 넣음
print(c.value) # ws["C1"].value 와 동일

 

2. 반복문(for)을 이용한 엑셀시트 랜덤숫자 채우기

랜덤으로 셀의 값을 채워보자.

#반복문(for)을 이용한 엑셀시트 랜덤숫자 채우기
from random import * # 최상단에 선언

for x in range(1,11): #10개 column
    for y in range(1,11): #10개 row
        ws.cell(row=x, column=y, value=randint(0,100)) #0~100 사이의 숫자 랜덤

 

 

셀이 입력되는 순서를 알고 싶으면 숫자를 차례대로 찍어보자

#반복문(for)을 이용한 엑셀시트 랜덤숫자 채우기
from random import * # 최상단에 선언

index = 0
for x in range(1,11): #10개 column
    for y in range(1,11): #10개 row
        ws.cell(row=x, column=y, value=index) #0~100 사이의 숫자 랜덤
        index += 1

 

사용한 파이썬 소스코드 다운로드

주석으로 정리가 잘 되어 있으니 파일을 받아서 활용

3_cell.py
0.00MB

반응형
그리드형

댓글