본문 바로가기
공부/졸업과제

데이터 툴 개선(엑셀 삽입 및 파일 열기 버튼 생성)

by 맑은청이 2022. 3. 18.
728x90
반응형

1. 엑셀 삽입 형태 변경 

엑셀에 선택한 셀의 행 열과 파일 명을 삽입해주어야 해서 해당 코드를 변경했다.

        #응답에 따른 조건문 실행
        if reply == QMessageBox.Yes:
            wb = openpyxl.load_workbook('test.xlsx') #test.xlsx이라는 엑셀 파일을 로드
            ws = wb.active
            ws.append([ws.max_row, self.fileName.text(),self.quesContent.text(),self.row.text(),self.col.text()]) #[순번, 파일 명, 질문 , 정답 행, 정답 열] 행추가
            wb.save('test.xlsx') #엑셀 파일 저장
            self.quesContent.clear() #질문 내용 초기화
        else:
            print(text)

 

 

2. 파일 열기 버튼 생성

파일경로를 통해서 버튼을 클릭하면 해당 pdf 파일이 열릴 수 있게 변경했다. 

위젯을 생성하고 버튼을 connect 함수로 연결해주고 해당 함수를 작성한다. 

#위젯생성
self.grid.addWidget(self.fileOpenBtn, 0, 2)
#버튼과 함수 연결
self.fileOpenBtn.clicked.connect(self.fileOpenBtnFunc)
    #fileOpenBtn이 눌리면 작동하는 함수
    def fileOpenBtnFunc(self):
        print(self.filePath)
        os.system('"' + self.filePath + '"')

 

엑셀과 파일이 잘 열리는 걸 확인할 수 있다.

 

파일 경로에 공백 오류는 아래 포스팅을 통해 해결했다. 

https://com24everyday.tistory.com/429

 

os.system(filePath) 공백 오류 간단해결

파이썬에서 os.system을 통해서 pdf 파일을 열어야 했는데 파일 경로에 공백이 있으니 아래와 같은 오류가 발생했다. 인코딩 문제인가 싶어서 utf-8 주석도 달아보고 subprocess.call도 써봤지만 잘 되지

com24everyday.tistory.com

 

728x90
반응형

'공부 > 졸업과제' 카테고리의 다른 글

PyQt로 HTML 테이블 파싱을 해보자  (0) 2022.02.16