본문 바로가기

업무자동화150

[파이썬-한/글] 현재 커서의 페이지를 알고 싶다? 안녕하세요? 자동화작업을 할 때, 표 안에 이미지나 장문의 텍스트를 삽입하다 보면 다음페이지로 넘어가버릴 수 있죠. ("글자처럼 취급"한 상태면, 개체전체가 다음페이지로 넘어갈 거고, 그렇지 않으면 셀이 다음 페이지로 넘어가 있겠죠?) 이걸 방지하기 위해서 현재 표의 위치, 현재 캐럿의 위치를 알아보고 싶은 경우들이 있습니다. 어마어마한 분량의 작업을 자동화하면서 모니터를 계속 쳐다볼 수는 없는 노릇이잖아요? 아래는 캐럿(커서)의 현재 페이지를 출력하는 코드입니다. import win32com.client as win32 # 모듈 임포트 hwp = win32.gencache.EnsureDispatch("HWPFrame.HwpObject") # 한/글 열기 hwp.XHwpWindows.Item(0).Vis.. 2020. 7. 30.
[파이썬-아래아한글] API매뉴얼과 스크립트매크로가 다르다? 안녕하세요? 회사원코딩의 신명진입니다. 이번 포스팅은, 스크립트매크로와 API매뉴얼 코드의 차이에 대해서 한 번 보여드리려고 합니다. 어떤 간단한 예제를 들어볼까 하다가, 쪽번호 감추기를 골라보았습니다. 아래는 스크립트매크로 녹화(Shift-Alt-H)를 이용한 "쪽번호 감추기" 기능입니다. function OnScriptMacro_script5() { HAction.GetDefault("PageHiding", HParameterSet.HPageHiding.HSet); with (HParameterSet.HPageHiding) { Fields = Hiding("PageNumPos"); } HAction.Execute("PageHiding", HParameterSet.HPageHiding.HSet); } .. 2020. 7. 29.
[파이썬-아래아한글] 제가 아래아한글 작업을 자동화하는 요령은.. 안녕하세요? 회사원코딩의 신명진입니다. 아래아한글 홈페이지 - 고객지원 - 개발자료실에 가면 아래아한글을 코딩으로 자동화할 수 있는 다양한 언어 예제와 API 매뉴얼이 있습니다. VB, MFC, C#, JS 등의 언어로 구현이 되어 있어요. 파이썬 코드도 이와 크게 다르지 않아서, API 매뉴얼을 어느 정도 읽어보시면 독학으로도 충분히 파이썬 자동화를 하실 수 있습니다. (링크 : https://www.hancom.com/board/devdataList.do?gnb0=25&gnb1=81 ) 신기하게도 아래아한글의 API는 같은 기능을 가지고도 구현방법이 여러가지입니다. 이게 제일 생소했던 부분인데, (문의메일을 보면 이 부분 때문에 "방대하고 어렵다"고 느끼시는 분도 많은 것 같아요.) 사실 파이썬에서 .. 2020. 7. 28.
백그라운드의 아래아한글, 숨김해제하는 방법(Visible) import win32com.client as win32 hwp = win32.gencache.EnsureDispatch("HWPFrame.HwpObject") hwp.RegisterModule("FilePathCheckDLL", "SecurityModule") current_window = hwp.XHwpWindows.Item(0) current_window.Visible = True # 숨김해제하는 코드 # hwp.XHwpWindows.Item(0).Visible = True 로 실행해도 동일 안녕하세요? 회사원코딩의 신명진입니다. 한/글2018이든 2020이든, 아니면 2010이든간에 최신 업데이트를 하고 나서 파이썬으로 아래아한글을 열면 기본적으로 백그라운드에서 파일이 열리게 됩니다. (커맨드창에.. 2020. 7. 28.
유튜브에 "회사원코딩"을 검색해보세요. 저는 회사원코딩이라는 유튜브 채널을 운영하고 있습니다. 공공기관 막내 생활을 5년 넘게 해 오면서, 단순한 아래아한글 반복작업 때문에 야근을 많이 했습니다. 그 때 이것저것 시도해보면서 얻은 지식과 노하우를 바탕으로 아래아한글-파이썬 자동화 예제를 동영상으로 만들어서 올리던 중에 이제는 아이디어가 슬슬 동이 나고 있어서... 영상을 올리지 않고 있습니다. (자동화라고 해봤자 10여개 명령어만 알면 정말 "다 할 수 있다"고 해도 과언이 아니거든요..) 10분 영상 기획해서 컷편집 작업하는 것도 시간을 많이 쓰게 되더라고요ㅜ 그리고...영상을 안 올리니까 구독자도 천 명 언저리에서 안 오르고 있습니다. 그만 올릴까 했는데 아직도 문의메일은 종종 받습니다. 대부분의 방법은 제 영상 곳곳에 다 설명해놓긴 했는.. 2020. 7. 28.
0강: 응용프로그램창 백그라운드로 숨기기 """ 안녕하세요? 파이썬으로 엑셀이나 아래한글 등 응용프로그램 자동화를 해보시면, 백그라운드로 숨기고 싶거나, 화면에 나타나게 하고 싶은 경우가 있죠. 셀레늄 크롤링할 때 크롬의 headless옵션처럼요. MS제품군, 엑셀 같은 경우는 excel.Visible 변수(bool)를 False로 정의해서 프로그램화면을 백그라운드로 숨기거나 True로 정의해서 나타나게 할 수 있는데, 아래한글 등 관련 메서드가 따로 없는 프로그램의 경우에는 동영상처럼 해주시면 됩니다. 동영상을 요약하면 win32gui.FindWindow(args)로 응용프로그램의 핸들값(int)을 찾고, win32gui.ShowWindow(args)로 창을 숨기거나 나타나게 합니다. 백그라운드 작업 종료시에는 try-finally 구문 등으.. 2020. 4. 3.