NGMsoftware

NGMsoftware
로그인 회원가입
  • 매뉴얼
  • 학습
  • 매뉴얼

    학습


    기타 뭐라도 해보자! 2부 - 엔지엠 에디터로 엑셀 업무 자동화 하기. (Let's do something! - Automating…

    페이지 정보

    본문

    안녕하세요. 엔지엠소프트웨어입니다. 1부에 이어서 엔지엠 에디터로 어떻게 엑셀 관련 업무를 자동화할 수 있는지 알아보도록 하겠습니다. 우선, 업무에 대한 시나리오가 있어야 하는데요. 엑셀에 데이타를 아래와 같이 만들었습니다. 마블 캐릭터들의 이름과 전화번호(?) 그리고 직책이 있습니다. 이걸 ppt의 특정 양식에 맞게 입력하는 업무입니다. 여러분들도 따라 해보세요^^

    sAw0g7u.png

     

     

    ppt는 명함을 포멧에 맞게 디자인(?)하는 작업입니다. 이 작업을 사람이 한다면 엑셀과 파워 포인트를 띄워놓고 하나씩 복사 붙여넣기 해야 합니다.

    qnyn50b.png

     

     

    엔지엠 에디터를 실행하고, 아래 그림과 같이 스크립트를 하나 추가하세요.

    xKm1xiI.gif

     

     

    엑셀로부터 데이타를 가져오기 위해 외부 API의 엑셀에서 값을 선택해줍니다.

    EoujQ18.gif

     

     

    데이타를 가져올 엑셀 파일을 선택하고, 속성의 "범위 선택 (시작 셀)"에서 열과 행을 1, 2로 설정 해줍니다. 엑셀은 인덱스가 0부터 시작하지 않습니다. 열은 첫번째라서 1이지만, 행은 첫번째 줄에 제목이 있어서 2부터 데이타를 가져오면 됩니다. 실행하면 아래 그림과 같이 "헐크" 이름을 잘 가져온것을 확인할 수 있습니다.

    5OzSOo6.png

     

     

    이걸 반복해야 하는데요. 이미 우리는 헐크부터 스타로드까지 몇개의 열과 행을 가지고 있는지 알고 있습니다. 하지만, 명함 주문 제작이 들어온걸 자동으로 엑셀로 정리하면 하루에 주문이 10개가 될수도 있고 20개가 될수도 있습니다. 그렇기에 엑셀을 열어서 열과 행의 갯수를 미리 알아내야 합니다. 하지만, 이렇게 일하면 비효율적이겠죠? 그래서, 엑셀에 열과 행의 갯수를 자동으로 알아내서 처리할 수 있도록 해주는게 좋습니다. 아래와같이 변경하고 결과를 확인 해보세요.

    SMG1R9S.png

     

     

    이제 열과 행의 갯수를 알아냈으니 반복하면서 데이타를 파워 포인트에 넣어주면 됩니다. 생각보다... 복잡할 수 있는데요. 코딩으로 처리하는것보다는 쉬울겁니다-_-; 변수를 3개 추가해서 열과 행의 갯수를 저장하고, 셀의 데이타도 저장할겁니다. 아래 그림을 참고해서 변수를 추가하고, 이름(아이디)도 설정 해주세요.

    jOqbJCX.png

     

     

    엔지엠은 동작을 수행하는 아이템을 액션이라고 부릅니다. 위에 값도 액션이고 변수와 마우스, 키보드등등... 액션입니다. 다만, 부를 때 변수 액션, 키보드 액션, 마우스 액션과 같이 부르고 있죠~ 변수에 대한 개념은 프로그래밍 또는 매크로 RPA를 처음 접하시는 분들은 생소하고 이해하기 어려울겁니다. A 액션에서 어떤 이미지를 찾았다고 생각 해보세요. 찾은 이미지는 크기와 위치를 가집니다. 찾은 이미지를 클릭하려면 어떻게 해야 할까요? 이미지 찾기 액션에서 찾은 이미지의 좌표를 마우스 클릭 액션에 알려줘야 합니다. 이렇게 동작하기 위해서는 이미지 찾기 액션의 좌표를 변수에 저장하고 마우스 클릭은 저장된 좌표를 가져와서 사용해야 합니다.

    uwtfBs3.gif

     

     

    변수에 대한 내용은 직접 만들어 가면서 익혀야 합니다. 아래 변수 설명서를 한번 읽어보시고~ 당장 이해가 안가더라도 지금은 그냥 외우세요^^;

    [ 변수 설명서 보기 ]

     

    이제 변수에 값이 들어왔는지 확인 해볼까요? 아래 동영상과 같이 메뉴의 보기에서 디버그를 체크 해줍니다. 그리고, 실행하면 하단에 변수에 값이 저장된걸 볼 수 있어요~

    nYzkspa.gif

     

     

    순차적으로 값을 가져오는걸 만들어 볼께요. 우선, 엑셀에서 열과 행을 반복시키는 함수의 For를 2개 추가해줍니다. 이 액션들은 행과 열을 2중으로 돌면서 데이타를 가져옵니다. 약간... 프로그래밍 방식과 비슷해서 비개발자분들은 이해하는데 어려울 수 있을거 같네요^^; 이게 말로 설명하는게 아니다보니 한계가 존재합니다.

    YEfqcGr.png

     

     

    엑셀을 보면 행에는 제목이 한줄 추가 되어 있습니다. 제목은 명함을 만드는데 필요하지 않으므로 건너뛰어야 합니다. 그래서, 행을 반복하는 첫번째 For 반복 액션을 보면 "초기값"이 2로 되어 있는걸 알 수 있습니다. 행의 경우에는 초기값이 1입니다. 앞서 설명한바와 같이 엑셀은 인덱스가 1부터 시작합니다. 그렇기 때문에 행은 2가 되고, 열은 1이 되는것입니다.

    nj64jbx.png

     

     

    자~!!! 그리고 중요한 반복은 초기값 2부터 시작하고, 1씩 증가하면서 22보다 작을때까지 반복하겠다는 의미입니다. 엑셀의 데이타를 보면 제목 1부터 데이타 21까지 존재합니다. 그래서, 2부터 시작해서 21까지 반복하도록 설정해둔 것입니다. 열의 경우에는 1부터 시작해서 3까지 반복해야 하므로 열과 행의 갯수에 1씩 증감 해준것입니다.

    Jv1oUiq.png

     

     

    여기까지가~ 엑셀에서 데이타를 순차적으로 가져오는 부분입니다. 첨부되어 있는 파일의 압축을 풀고, "업무 자동화 스텝 1.ngs" 스크립트로 테스트 해보시기 바랍니다. 여기까지 이해가 되었다면, 이제 본격적으로 ppt에 데이타를 이동시키는 방법에 대해 알아볼께요. 우선, ppt를 실행하세요. 그리고, 입력할 데이타를 각각 클릭하도록 하고 키보드로 전체 선택한 후 삭제합니다. 아래 그림과 같이 콘트롤키와 A키를 조합하면 전체 선택이 됩니다.

    TnxxUAQ.png

     

     

    첨부되어 있는 "업무 자동화 스텝 2.ngs"는 최종 완성된 스크립트입니다. 에디터에서 열고 실행해보면 아래 동영상처럼 잘 동작할거예요^^; 다만~ 파워 포인트의 디자인과 폰트 사이즈는 적절하게 잘 조절해보시기 바랍니다. 폰트 크기를 너무 크게 했더니... 보기가 안좋긴 하네요. 디자인은 각자 이쁘게 만들어보시고, 핵심인 스크립트를 분석하고 해석해서 자신의 것으로 만들어야 합니다.

    sWlDNP5.gif

     

     

    여기까지 해서 엑셀 업무 자동화는 마치도록 하겠습니다. 이외에도 정말 많은 기능들이 포함되어 있는데요. 어떻게 사용하느냐에 따라 성능은 천차만별입니다. 엔지엠 에디터뿐만 아니라 디자이너나 프레임워크를 사용하면 더 많은 기능을 사용할 수 있습니다. 막강한 프레임워크의 도움을 받아서 추가적인 비즈니스 로직을 새롭게 작성할 수 있습니다. 파워 유저라면 프레임워크를 사용해서 새로운 서비스를 만들어내고, 고객을 유치해서 나만의 사업을 만들 수 있습니다. RPA 서비스가 대세인 지금~ 내가 잘 아는 분야의 자동화 서비스를 개발해서 사업을 시작 해보세요^^

    지금이 시작할 때 입니다~

     

    개발자에게 후원하기

    MGtdv7r.png

     

    추천, 구독, 홍보 꼭~ 부탁드립니다.

    여러분의 후원이 빠른 귀농을 가능하게 해줍니다~ 답답한 도시를 벗어나 귀농하고 싶은 개발자~

    감사합니다~

    • 네이버 공유하기
    • 페이스북 공유하기
    • 트위터 공유하기
    • 카카오스토리 공유하기
    추천0 비추천0

    첨부파일

    댓글목록

    등록된 댓글이 없습니다.