엑셀 중급_VBA 와 매크로 (3)

매크로는 사전적 의미는 대규모라는 뜻이고 매크로의 반대말은 마이크로 입니다. 엑셀뿐 아니라 모든 오피스 프로그램에서 매크로는 대규모의 일을 처리한다는 의미에서 붙여 졌습니다. 매크로는 자주 반복되는 여러 개의 작업을 하나의 직업으로 묶어서 실행 하도록 자동으로 VBA코드로 변환해 주는 엑셀의 강력한 기능 중 하나입니다. 그래서 VBA와 매크로는 같은 개념이라고 할 수 있습니다. VBA를 처음부터 코딩 하는 것은 많은 숙련을 필요로 합니다. 엑셀상에서 내가 반복하는 작업이면 엑셀이 그 작업을 기억하고 VBA코드로 자동으로 변환해 주는 것을 매크로라고 합니다. 엑셀 중급 포스팅에서는 VBA를 처음부터 코딩 하지 않고 매크로를 이용해 자동 생성된 VBA코드를 이해하고 그 코드를 조합하고 약간의 변형을 하는 것으로 프로그래밍을 완성해 나가겠습니다.

03연습파일.xlsx

03연습파일_완성본.xlsx

  1. 수식 등 특정한 서식을 가진 셀을 찾아서 서식 적용하기

    엑셀에서 매크로와 VBA는 반복되는 모든 작업을 할 수 있지만 처음 매크로와 VBA를 접하는 사람은 가장 간단한 반복 작업인 찾기와 서식 적용으로 연습하시면 이해가 빠릅니다. 엑셀을 사용하면서 흔히 하는 작업은 워크시트를 열었을 때 수식 셀을 구분하는 일 입니다. 수식 셀은 보통 워크 시트를 만든 사람이 아니면 수정할 일이 거의 없는 데이터 이고 다른 데이터를 수정하면 자동으로 바뀌기 때문에 실수로 수정을 하면 안됩니다. 매크로를 이용해 어떻게 수식 셀을 구분할 지 알아 보겠습니다.

     

    지금 연습파일의 고용기간은 오늘 날짜와 고용 일을 이용하여 계산된 고용 기간입니다. 만약 오류가 있다면 고용 일에 있는 것이므로 절대 이 셀을 수동으로 수정 하면 안됩니다.

     

     

    수식으로 되어 있는 셀을 구분 하기 위해 찾기 및 선택 >> 이동 옵션을 선택하여 줍니다.

     

     

    수식을 클릭하고 확인을 누릅니다.

     

     

    수식이 있는 셀들만 모두 선택 되었습니다. 그러나 다른 작업을 하기 위해 클릭을 하게 되면 선택은 없어 지므로 셀에 서식을 적용해 구분해 보겠습니다.

     

     

    홈 탭에서 셀의 색상 적당한 것을 선택해 줍니다.

     

     

    그리고 테두리를 적용해 줍니다.

     

     

    이제 다른 작업을 하더라도 수식 셀을 쉽게 구분할 수 있습니다.

     

    만약 다른 사람들로부터 파일을 자주 받는 다면 이 작업을 파일마다 반복해 주기는 번거롭습니다. 5~6단계의 작업을 한 단계로 묶어 한번에 실행하게 하는 것이 매크로 입니다.

  2. 패턴을 가진 데이터를 내가 원하는 데이터 형태로 바꿀 때

    내가 다니는 회사의 데이터 형태가 항상 다른 회사의 데이터 베이스 형태와 같은 보장은 없습니다. 때로는 다른 회사로부터 데이터를 이메일로 받을 수 있고 이때 우리 회사의 데이터 입력 형태와 다르다면 일일이 수정해서 옮기기는 매우 번거로운 일입니다. 데이터가 10개 이내로 적다면 그래도 해 볼 만 하지만 엑셀에서 수 천 개의 데이터는 흔한 일이므로 이걸 수동으로 일일이 작업한다는 것은 상식에 맞지 않습니다.

     

    부서 이동 직원 명단을 받았지만 지금 현재의 데이터 베이스 형태와 다릅니다. 이걸 회사의 데이터 베이스 형태로 바꿔 보겠습니다.

     

     

    먼저 첫 번째 사람과 필드를 같이 복사를 합니다.

     

     

    마우스 우 클릭으로 붙여 넣기를 하면서 행 열 바꾸기 옵션을 선택 합니다.

     

     

    이제부터 필드 이름은 필요 없으므로 사람과 연말 보너스의 값들만 복사를 하면 됩니다.

     

     

    이렇게 두 번째 사람을 복사해서 같은 작업을 반복 합니다.

     

    만약 부서 이동 직원이 100명 이상이라면 이 작업을 하는데 걸리는 시간은 몇 십 분이 될 것이고 1000명 이상이라면 중노동 입니다. 분명 패턴을 가진 반복된 작업이므로 매크로와 VBA로 하나의 작업으로 만들 수 있습니다.

    매크로는 이런 간단한 예제 뿐 아니라 모든 규칙이 있는 작업의 자동화가 가능 합니다. 내가 어떤 특정한 일을 반복해서 해야 하고 그 일에 규칙이 있다면 모든 작업을 매크로로 한번에 작업이 가능합니다. 이제 어떻게 매크로를 사용하고 적용하는지 실제 방법을 소개 하도록 하겠습니다.


+ Recent posts