728x90
파이썬을 이용한 엑셀파일 시트에 데이터를 한줄 씩 넣는 방법과
넣은 데이터의 좌표와 전체 값을 가져오는 방법에 대해서 알아보자
1.데이터 한줄씩 넣기(리스트 형식)
랜덤 함수를 사용했기 때문에 실행할 때 마다 값이 변경될 수 있다.
from openpyxl import Workbook
from random import *
wb = Workbook()
ws = wb.active
ws.title = "bebesheet" #엑셀 시트명 변경
# 한줄 씩 데이터 넣기(리스트)
#제목 구분자
ws.append(["번호", "영어", "수학"]) #한줄씩 입력가능(리스트 형식으로) # A B C
#점수 데이터
for i in range(1,11): #10개 데이터 넣기
ws.append([i, randint(0,100), randint(0,100)]) #랜덤 함수를 사용해서 1~100점까지 랜덤 점수 넣기
wb.save("test.xlsx")
2. 전체 값 가져오기
from openpyxl import Workbook
from random import *
wb = Workbook()
ws = wb.active
ws.title = "bebesheet" #엑셀 시트명 변경
# 한줄 씩 데이터 넣기(리스트)
ws.append(["번호", "영어", "수학"]) #한줄씩 입력가능(리스트 형식으로) # A B C
for i in range(1,11): #10개 데이터 넣기
ws.append([i, randint(0,100), randint(0,100)]) #랜덤 함수를 사용해서 1~100점까지 랜덤 점수 넣기
#3. 모든 셀값 가져오기
from openpyxl.utils.cell import coordinate_from_string #셀에대한 좌표 정보를 가져오기 위한 import
row_range_all = ws[2:ws.max_row] #2번째 줄부터 마지막 줄까지
for rows in row_range_all:
for cell in rows:
print(cell.value, end=" ") #셀의 값 출력
#print(cell.coordinate, end=" ") #셀의 좌표정보 가져오기 A/2, A/3 ~ C/11
print()
wb.save("test.xlsx")
3. 좌표 값 가져오기
from openpyxl import Workbook
from random import *
wb = Workbook()
ws = wb.active
ws.title = "bebesheet" #엑셀 시트명 변경
# 한줄 씩 데이터 넣기(리스트)
ws.append(["번호", "영어", "수학"]) #한줄씩 입력가능(리스트 형식으로) # A B C
for i in range(1,11): #10개 데이터 넣기
ws.append([i, randint(0,100), randint(0,100)]) #랜덤 함수를 사용해서 1~100점까지 랜덤 점수 넣기
#셀 좌표 값 가져오기
from openpyxl.utils.cell import coordinate_from_string #셀에대한 좌표 정보를 가져오기 위한 import
row_range_all = ws[2:ws.max_row] #2번째 줄부터 마지막 줄까지
for rows in row_range_all:
for cell in rows:
#print(cell.value, end=" ") #셀의 값 출력
print(cell.coordinate, end=" ") #셀의 좌표정보 가져오기 A/2, A/3 ~ C/11
print()
wb.save("test.xlsx")
4. 좌표 값 가져오기(변수로 받아서)
변수로 받아서 표현하는것 말고는 위와 결과가 동일하다.
from openpyxl import Workbook
from random import *
wb = Workbook()
ws = wb.active
ws.title = "bebesheet" #엑셀 시트명 변경
# 한줄 씩 데이터 넣기(리스트)
ws.append(["번호", "영어", "수학"]) #한줄씩 입력가능(리스트 형식으로) # A B C
for i in range(1,11): #10개 데이터 넣기
ws.append([i, randint(0,100), randint(0,100)]) #랜덤 함수를 사용해서 1~100점까지 랜덤 점수 넣기
#셀 좌표 값 변수로 받아서 가져오기
from openpyxl.utils.cell import coordinate_from_string #셀에대한 좌표 정보를 가져오기 위한 import
row_range_all = ws[2:ws.max_row] #2번째 줄부터 마지막 줄까지
for rows in row_range_all:
for cell in rows:
#print(cell.value, end=" ") #셀의 값 출력
#print(cell.coordinate, end=" ") #셀의 좌표정보 가져오기 A/2, A/3 ~ C/11
xy = coordinate_from_string(cell.coordinate) #좌표 정보를 xy 변수에 넣음
print(xy[0], end="")
print(xy[1], end=" ")
print()
wb.save("test.xlsx")
사용한 파이썬 소스코드 다운로드
주석으로 정리가 잘 되어 있으니 파일을받아서 활용
반응형
그리드형
'IT > Python' 카테고리의 다른 글
[파이썬] 엑셀 시트 IF 조건문 출력 연습 / iter_rows, if (0) | 2021.11.22 |
---|---|
[파이썬] 엑셀 시트 데이터 삽입 및 조회 / .iter_rows(), tuple() (0) | 2021.11.22 |
[파이썬] 엑셀 row(행) 값 가져오기 / 데이터 넣기(한줄씩) / 리스트 (0) | 2021.11.18 |
[파이썬] 엑셀 컬럼(열)값 가져오기 / 데이터 넣기(한줄씩) / 리스트 (0) | 2021.11.18 |
[파이썬] 엑셀 파일 정보 불러오기(열기) / 화면 출력하기 (0) | 2021.11.18 |
댓글