• 카테고리

    질문 & 답변
  • 세부 분야

    업무 자동화

  • 해결 여부

    해결됨

필드에 자료넣는 강의에서 마지막에 코드가 넣어집니다.

23.02.24 13:57 작성 조회수 238

1

15강에서 다른부분은 작동이 되는데

hwp.Run("CopyPage")

row = 2

while True:

if not ws.Cells(row, 1).Value:

hwp.Run("DeletePage")

break

else:

data = list(

ws.Range(ws.Cells(row,1),

ws.Cells(row, 4)).Value[0]

)

data[2] = data[2].strftime("%Y년 %#m월 %#d일")

필드삽입(row-2, data)

hwp.Run("PastePage")

row += 1

여기에서 첫장만 바뀌고 그뒤에는 자료가 복사되지 않고 뒤에코드 row+1이 복사가 됩니다.

문제가 뭘까요?

 

답변 1

답변을 작성해보세요.

1

실례지만 사용중이신 한/글 버전을 알려주시겠어요?^^

 

준섭님의 프로필

준섭

질문자

2023.02.24

한글2020입니다

흠, 코드에는 문제가 없어 보입니다.

(들여쓰기 오류가 있는게 아닌지 의심됩니다ㅜ)

저도 해당 강의의 수업자료를 다시 다운받아서

동일한 코드로 실행해보았는데,

# 첫 쪽 복사
hwp.Run("CopyPage")

# while문 실행
row = 2
while True:
    if not ws.Cells(row, 1).Value:
        hwp.Run("DeletePage")
        break
    else:
        data = list(
            ws.Range(ws.Cells(row, 1),
                     ws.Cells(row, 4)).Value[0]
        )
        data[2] = data[2].strftime("%Y년 %#m월 %#d일")
        필드삽입(row - 2, data)
        hwp.Run("PastePage")
        row += 1

 

아래와 같은 결과가 나옵니다.

image

들여쓰기가 문제가 아닌지 의심이 되는데,

전체 코드를 코드블럭 안에 넣어서 다시 회신 주시면 검토해보겠습니다.

( ` 를 세 번 타이핑한 후 엔터를 치면 자동으로 코드블럭이 생성됩니다.)

추가로, 기존에 한/글 파일이 하나 열려 있어서 해당 문서가 "읽기전용"으로 열린 건 아닌지 확인을 한 번 해주시기 바랍니다. 제일 좋은 방법은 Ctrl-Shift-Esc 키로 작업관리자를 여셔서, 열려 있는 모든 한/글2020 프로그램을 종료한 후 코드를 재실행하는 것입니다^^

준섭님의 프로필

준섭

질문자

2023.02.24

기존에 백그라운드에 한글 켜진 것을 끄고 다시 천천히 입력해보니 진행 되었습니다.

답변감사합니다.

다행입니다^^ 진행하시면서 질문 자주 남겨주시기 바랍니다. 행복한 하루 되세요 ㅎㅎㅎ