본문 바로가기

반응형

코딩/엑셀,VBA

[엑셀/VBA] 다른 엑셀 파일에서 원하는 시트 가져오기 이전 포스팅에서는 원하는 시트를 다른 엑셀 파일로 복사시키는 VBA에 대해 포스팅을 진행했다. 이번 편은 반대로 다른 엑셀파일에서 원하는 시트를 복사해서 가져오는 매크로를 작성해보려고 한다. 프로그램을 테스트하기 위해 아래 가상의 예시파일을 만들었다. 1.xlsx, 2.xlsx, 3.xlsx는 시트를 가져올 엑셀파일들이고 BrigntSheet.xlsm은 매크로 동작파일이다. 1.xlsx, 2.xlsx, 3.xlsx의 시트 구성은 숫자-A,B,C와 같은 구성으로 되어있다. 아래 이미지는 1번 파일의 시트명이다. 2번 3번 엑셀파일도 동일한 규칙으로 시트가 구성되어있다. 이번 포스팅의 목적은 내가 원하는 엑셀파일의 원하는 시트를 가져오는 VBA 코드를 작성해보는 것이다. 사실 이전편과 비교하여 Copy, M.. 더보기
[엑셀/VBA] 원하는 시트를 다른 엑셀 파일로 복사하기 엑셀 VBA 중 원하는 시트를 다른 엑셀 파일로 복사하는 방법을 포스팅할 것이다. 시트를 이동 시키는 경우는 여러가지가 있겠지만 대표적으로 많이 쓰일 것같은 방식은 아래 2가지이다. -. 현재 실행중인 파일의 특정 시트를 새로운 엑셀파일로 이동시키기 -. 현재 실행중인 파일에서 다른 엑셀 파일의 시트를 읽어오기 이 포스팅에서는 현재 실행중인 파일의 특정 시트를 새로운 엑셀파일을 생성하여 이동/복사시키는 방법을 다룬다. 1. 시트 이동 및 복사 메서드 : Copy, Move 사용하기 엑셀 VBA에서는 엑셀의 시트를 복사하거나 이동시키는 메서드를 제공한다. Copy와 Move이다. 아래와 같이 예시를 통해 사용법을 알아보자. 먼저 가상의 매크로 파일을 만들어보자. "test.xlsm"이라는 매크로 파일이며,.. 더보기
[엑셀/VBA] 엑셀 시트 마지막 행값 구하기 지금까지 엑셀 VBA를 사용할 때 자주 사용했던 부분이 있어 정리해보는 포스팅. 엑셀 업무를 하다보면 아래와 같은 경우를 많이 볼 수 있다. 위 양식은 지출내용을 정리한 간단한 엑셀파일이다. 엑셀을 좀 해봤던 사람이면 당연히 지출 합계는 SUM 함수를 사용해서 간단하게 구할 것이다. 만약, 합계를 데이터가 아래 추가될 때마다 자동으로 마지막 행까지 계산하여 출력하는 VBA 프로그램을 만든다고 해보자. 어떻게 해야될까? 일단 결과 코드부터 작성해보면 아래와 같다. Sub 합계() Dim LastRow As Integer Dim i As Integer Dim rng As Range LastRow = Cells(Rows.Count, 3).End(3)(2).Row Range("F1") = "합계" Range(".. 더보기
[엑셀/VBA] Split , Ubound 함수 설명 및 예시 업무를 하다보면 엑셀에 여러 정보가 한 셀에 묶여 있어 정보별로 구분을 해야하는 경우가 있다. 예를 들면 위와 같이 설명란에 나이, 국적, 연락처가 한번에 섞여있어 구분이 필요한 경우를 들 수 있다. 위 이미지는 가상의 예시로 만들어본거고 실제 회사에서 업무를 할 때 묶여있는 정보를 유의미하게 분류하는 작업이 필요하다. (데이터 전처리) 가장 쉽게 하는 방법은 파이썬을 활용하는 것이다. 파이썬을 활용하여 코드 몇줄 작성하면 위와 같은 케이스는 쉽게 해결이 가능하다. 그래도 이 포스팅은 VBA 공부를 위한 포스팅이므로 엑셀 VBA 입장에서 내용을 정리해본다. 엑셀 VBA도 파이썬과 마찬가지로 다양한 내장함수들을 제공한다. 그 중 자주 쓰이는 2가지 함수가 Split 함수와 UBound 함수이다. 1. Sp.. 더보기
[엑셀/VBA] Find 함수 사용법, 예시 원래 엑셀 VBA를 많이 쓰고는 있었지만 인터넷에 나와있는 코드를 짜집기 하는 형태여서 실제 이 코드가 어떤건지 모르는 내용이 많다. 엑셀을 많이 다루고 있는 만큼 처음부터는 아니더라도 중요하다고 생각되는 부분만큼은 블로그에 정리해볼 예정. 추가로 파이썬의 xlwings라는 모듈을 사용하면 엑셀 VBA와 연동하여 유용하게 활용할 수 있다고 한다. 업무자동화에 관심이 많다면 공부해보면 좋을 것 같다. 1. Find 함수 Find 함수는 엑셀에서 데이터가 일치하거나, 또는 부분일치하는 값을 찾는 VBA 메서드(함수)이다. Find 함수의 기본 사용법은 아래와 같다. ※ 사용법 셀 범위(Range).Find(What:=찾을 값,Lookat:=xlWhole) -. Lookat:= xlWhole 일 경우 찾을 값.. 더보기

반응형