파이썬으로 한 파일에서 다른 파일로 표 내용을 붙여넣기하는 코드를 짰는데
hwp.HAction.Run(“Paste”)
를 사용해서 붙여넣기를 했더니 프로그램 실행 와중에 덮어쓰기/내용만 덮어쓰기/셀 안에 표로 넣기 를 선택하는 창이 떠서 일일이 선택해줘야만 하는 번거로움이 있네요… (제가 하고 싶은 것은 ‘내용만 덮어쓰기’)
그래서 아래 3줄의 코드로 교체를 했는데
hwp.HAction.GetDefault(“Paste”, hwp.HParameterSet.HSelectionOpt.HSet)
hwp.HParameterSet.HSelectionOpt.Option = 5
hwp.HAction.Execute(“Paste”, hwp.HParameterSet.HSelectionOpt.HSet)
아래와 같이 오류가 뜹니다(일부 생략)
KeyError: ‘Option’
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
hwp.HParameterSet.HSelectionOpt.Option = 5
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError(
AttributeError: ‘<win32com.gen_py.HwpObject 1.0 Type Library.HSelectionOpt instance at 0x3134827365248>’ object has no attribute ‘Option’
한글 홈페이지에서 제공하는 ParameterSetObject.pdf 파일에 보면, 'Option’이 없는 속성은 아닌 것 같은데 말이죠… 제가 무엇을 잘못하고 있는 걸까요?
코드를 저렇게 3줄로 바꾼 이유는… 동일 작업을 한글 매크로로 돌렸을 때 나오는 스크립트가 아래와 같았기 때문입니다 (붙여넣기 → 옵션 창이 뜨면 ‘내용만 덮어쓰기’ 선택)
HAction.GetDefault(“Paste”, HParameterSet.HSelectionOpt.HSet);
with (HParameterSet.HSelectionOpt)
{
Option = 5;
}
HAction.Execute(“Paste”, HParameterSet.HSelectionOpt.HSet);
}