엑셀 VBA 다른시트에 입력내용 누적 기록하는 방법

VBA 누적기록

베스트 세일 상품 추천!
BMW 1~4시리즈 안드로이드 멀티미디어 터치스크린
KRW 294,800 (55% 할인)
베스트 세일 상품 추천!
MIJIA H501 SE 헤어 드라이어 고속 음이온
KRW 45,600 (50% 할인)

엑셀을 어느정도 사용하다 보면, 엑셀을 사용해 업무의 일정부분을 자동화(VBA) 해보고 싶은 욕심이 생기기도 합니다. 매번 반복하는 노가다성 업무를 줄일 수도 있고, 하나의 문서에서 입력과 기록을 나누어 관리할 수도 있어 편리할 것 같습니다.

랜덤 링크 버튼

문제는 바쁜 직장인으로서, 이미 정해진 업무를 수행하기도 벅찬 가운데 VBA매크로까지 섭렵하려니 막막하기만 한데요. 저 역시 비슷한 고민에 조금씩 시간을 내 인터넷 자료를 참고해 대부분의 엑셀업무에 VBA를 활용하기 시작했습니다. 여전히 스스로 매크로 코드를 작성하는데에는 어려움이 있지만, 이미 다뤄본 소스를 잘 활용해 그럭저럭 사용하고 있습니다.

베스트 세일 상품 추천!
MIJIA H501 SE 헤어 드라이어 고속 62m/s 풍속 음이온 헤어 케어 110,000 Rpm 전문 드라이 220V CN 버전
현재 가격: KRW 45600 (원래 가격: KRW 91200, 50% 할인)

이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다.

​개인적인 기록이기도 한 블로그의 엑셀관련 포스팅에도 여러 번 강조했듯, 아무것도 모르는 상태라 하여도 일단 부딪혀보는 것이 큰 도움이 될 수 있다고 이야기했었는데요. 이 생각은 언제까지나 변함이 없을 것 같습니다.

​오늘은 VBA를 활용해 다른 시트에 입력된 내용을 기록하는 방법에 대해 소개해보려 하는데요. 매일 새로이 발생하는 데이터의 경우 별도의 입력전용 시트를 만들어두고, 기록되는 내용은 다른 시트에 관리하면 추후 데이터 활용에도 도움이 될 수 있으므로 숙지해두면 도움이 될 것 같습니다.

베스트 세일 상품 추천!
1920*720 BMW 1 2 3 4 시리즈 F20 F21 F22 F30 F31 F33 F34 F36 NBT 시스템 안드로이드 오토 카플레이 WIFI 지원 차량용 멀티미디어 터치스크린
현재 가격: KRW 294800 (원래 가격: KRW 655111, 55% 할인)

VBA 데이터 누적 기록

샘플시트

엑셀 VBA 다른시트에 입력내용 누적 기록하는 방법_1

지난 번 포스팅에 등장했던 샘플을 그대로 가져왔습니다. VBA에서 엑셀함수를 사용하는 방법에 대한 내용이었는데, 거꾸로 사용해도 괜찮을 것 같습니다.

샘플데이터

엑셀 VBA 다른시트에 입력내용 누적 기록하는 방법_2

해당 포스팅에서는 이미 입력돼있는 다른 시트의 데이터를 Vlookup으로 가져왔었으니, 이제는 반대로 이 시트에 누적해 데이터를 기록하는 방법인데요.

엑셀 VBA 다른시트에 입력내용 누적 기록하는 방법_3

시트명은 그대로 둔다해도, 검색버튼은 등록버튼으로 바꿔줬습니다.

버튼에 이미 입력된 매크로를 수정하는 방법은, 우측버튼 클릭 후 다시 매크로를 선택해 고쳐주면 될 것 같습니다.

매크로 코드 작성

엑셀 VBA 다른시트에 입력내용 누적 기록하는 방법_4

이후 VBA편집창을 실행해 ‘등록’이라는 이름의 매크로를 만들었습니다.

먼저 변수를 선언하고 이후 동작들에 대해 표현해 봤습니다. Cells(Rows.count, 1).End(3)(2).Row에 대한 이해는 약간 어려울 수 있는데요.

간단히 이야기하자면 엑셀의 제일 마지막행에서 위로 올라가다가 데이터가 있는 행에서 멈추고, 바로 그 아래 행을 의미합니다.

nextline은 결국 이전의 데이터 이후 입력되는 행의 번호가 되겠죠.

테스트

엑셀 VBA 다른시트에 입력내용 누적 기록하는 방법_5

이후 각 항목에 데이터를 입력하고 매크로를 실행하면(등록버튼),

엑셀 VBA 다른시트에 입력내용 누적 기록하는 방법_6

Sheet2에 해당 내용이 그대로 누적돼 입력된 것을 확인할 수 있습니다.

누적금액에 셀 서식이 적용된 그대로 값이 들어왔으나 이후 서식을 수정하는 등의 방법을 진행하면 될 것 같습니다.

메시지박스 응용

엑셀 VBA 다른시트에 입력내용 누적 기록하는 방법_7

매크로를 지정한 등록버튼을 제대로 눌렀는 지 확인이 필요할 때가 있을건데요.

이 때에는 메시지박스를 사용하면 확실하게 알 수 있을 것 같습니다.

If와 MsgBox를 활용해 예/아니오로 선택할 수 있는 대화상자를 넣게되면,

엑셀 VBA 다른시트에 입력내용 누적 기록하는 방법_8

별도의 대화상자가 나타나, 예를 누르면 시트에 데이터를 입력하고 그렇지 않다면 취소하게 되는데요.

입력이 완료된 경우 ‘등록되었습니다’ 라는 메시지를 넣어봤고, 이후 내용을 초기화하거나 하는 등의 진행도 가능할 것 같습니다.

마치며

간단한 VBA를 활용해 하나의 시트에 입력된 내용을 다른 시트로 누적입력하는 방법에 대해 소개해 봤습니다. 엑셀로 업무를 자동화하는 과정을 생각한다면, 결국 데이터의 누적입력과 가공, 활용 등이 수반되어야 하기에 유용하게 사용될 수 있을 것 같습니다.

​VBA매크로 코드를 작성하고 사용하는데에 정답은 없다고 생각합니다. 내가 원하는 결과를 나타낼 수 있는데 오류와 에러가 없다면 당장 사용하기에 큰 문제는 없을 것 같습니다. 점점 더 공부하면 되니까요.

Comments are closed.

이 링크를 통해 구입하시면 일정액의 수수료를 받을 수 있습니다.
```전면 네이버커넥트 광고
이 링크를 통해 구입하시면 브랜드커넥트 수수료를 지급받습니다.

이 제품을 명이 함께 보고있습니다.

제품이미지
[사전구매 더블업]삼성 공식 갤럭시 S26 256GB 자급제
1,252,940원
``` 세 가지 트리거 정리하면 최초 접속 2초 후 자동 노출, 링크 클릭 시 팝업 먼저 노출 후 이동, 마우스가 브라우저 상단으로 나갈 때 노출입니다. 쿨타임 1분은 유지되어서 1분 안에는 중복으로 뜨지 않아요.