반응형

해당작업은, 파이썬 3.x버전과 파이참을 이용하여 작성했다. (아래 참고)

https://ansan-survivor.tistory.com/134

 

Pycharm(파이참)을 이용하여 Python 개발환경 구축하기

파이참은 파이썬 개발을 편리하게 하는 많은 기능을 제공하는 툴이다. https://www.jetbrains.com/pycharm/download/#section=windows Download PyCharm: Python IDE for Professional Developers by JetBrains Do..

ansan-survivor.tistory.com

 

엑셀을 사용하기 위해서는 'openpyxl' 이라는 라이브러리가 필요하다.

고로 먼저 아래와 같이 pip 명령을 이용해 다운한다.

 

* 기본 설정

 

1.

명령 프롬프트를 실행한다.

  (윈도우10에서) Ctrl + S  => cmd 입력

 

2.

  >pip install openpyxl==2.6.2 를 입력한다.

그러면 import openpyxl 을 줄에 넣을 때, 빨간줄이 생기지 않는다. (파이참에서)

* 엑셀 생성하기

먼저 아래와 같은 엑셀을 만들 것이다.

아래 소스코드를 실행 시키면 위와 같은 엑셀이 만들어진다.

'''

made by 안산드레이아스
https://ansan-survivor.tistory.com/

설치파일
pip install openpyxl
'''


import openpyxl # pip install openpyxl==2.6.2

'''
	엑셀 파일 쓰기.
'''
# 파일 쓰기 위한 객체 생성.
write_wb = openpyxl.Workbook()
write_ws = write_wb.active

# (col, row 인자값) 에 입력
write_ws = write_wb.active
write_ws['A1'] = '수량'
write_ws['B1'] = '가격'
write_ws['C1'] = '금액'

# 행(Row) 방향로 추가, 줄이 바뀌면 열(column) 방향으로 아래로 내려감.
write_ws.append([25, 5000, 125000])
write_ws.append([30, 5500, 60000]) 		
write_ws.append([35, 8000, 9000])

for i in range(5):						# for문으로 만들어보기
	write_ws.append([i+1, i+2, i+3])


# 셀 단위로 추가 col2, row5에 '셀추가'를 입력. (특정cell 지정하여 넣기)
write_ws.cell(5, 5, '셀추가')

# 편집된 엑셀파일을 저장.write_wb.save('./test.xlsx')
'''
	엑셀 파일 읽기.
'''
# 파일 쓰기 위한 객체 생성.
load_wb = openpyxl.load_workbook("./test.xlsx", data_only=True)

# sheet 이름 불러오기
load_ws = load_wb['Sheet']

# 셀주소값에 접근 후 출력
print(load_ws['A1'].value)

# 셀좌표값에 접근 후 출력
print(load_ws.cell(2,2).value)

# 셀 범위 지정하여 차례대로 출력
get_cells = load_ws['A1':'C3']
for row in get_cells:
	for cell in row:
    	print(cell.value)
        
# 모든 행과 열을 출력
print("\n=== 모든 행과 열 출력 ===")
all_values = []
for row in load_ws.rows:
	row_value = []
    for cell in row:
    	row_value.append(cell.value)
	all_values.append(row_value)

print(all_values)

print문은 값을 확인해보려고 넣은것이다.

*(참고) 엑셀파일 생성위치는 현재 이 프로젝트가 위치한곳 ( ./ ) 으로 되어있다.

만약 저걸 C:/test.xlsx 으로 바꾸면 C: 드라이브에 생길 것이다. 본인이 원하는 곳으로 설정

반응형

+ Recent posts