엑셀 / VBA / 여러 시트의 내용을 하나의 시트에 모으는 방법

동일한 형식에 내용만 다른 여러 시트의 데이터를 하나로 합치는 방법을 알아본다.

예를 들어 다음과 같은 엑셀 문서가 있다고 하자. 첫 번째 시트는 합쳐진 데이터가 모일 시트이고, 나머지 세 개는 데이터가 있는 시트이다.

[개발 도구]의 [Visual Basic]을 클릭한다.(만약 개발 도구 메뉴가 없다면 여기의 안내대로 개발 도구를 추가한다.)

[삽입]의 [모듈]을 클릭한다.

다음과 같이 코드를 입력한다.

Sub Merge()

    Sheets(1).Activate '첫 번째 시트로 이동
    ActiveSheet.Range("A1").CurrentRegion.Select '값이 있는 셀 선택
    Selection.Delete '선택한 셀 삭제

    Sheets(2).Activate '두 번째 시트로 이동
    ActiveSheet.Range("A1").CurrentRegion.Select '값이 있는 셀 선택
    Selection.Copy Destination:=Sheets(1).Range("A1") '첫 번째 시트에 붙여넣기
    ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Offset(1, 0).Select '값이 있는 다음 행 첫 번째 셀 선택

    Dim I As Integer
    For I = 3 To 4
        Sheets(I).Activate 'I 번째 시트로 이동
        ActiveSheet.Range("A1").CurrentRegion.Select '값이 있는 셀 선택
        Selection.Offset(1, 0).Resize(Selection.Rows.Count - 1).Select '선택에서 1행 제외
        Selection.Copy Destination:=Sheets(1).Range("A65536").End(xlUp)(2) '첫 번째 시트에 붙여넣기
        ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Offset(1, 0).Select '값이 있는 다음 행 첫 번째 셀 선택
    Next
    
    Sheets(1).Activate '첫 번째 시트로 이동
    ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Offset(1, 0).Select '값이 있는 다음 행 첫 번째 셀 선택
    
End Sub

다음의 순서로 작업하는 코드이다.

  1. 첫 번째 시트를 선택하고 내용을 지운다.
  2. 두 번째 시트의 내용을 복사하여 첫 번째 시트에 붙여넣는다.
  3. 나머지 시트의 내용을 복사하여 첫 번째 시트에 붙여넣는다.

두 번째 시트에 대한 코드와 나머지 시트에 대한 코드가 다른 이유는 머리글 때문이다.

이제 [개발 도구]의 [매크로]를 클릭한다. 단축키는 Alt+F8이다.

Merge를 선택하고 [실행]을 클릭한다.

다음처럼 첫 번째 시트에 데이터가 다 모인다.

같은 카테고리의 다른 글
엑셀 / 함수 / EXACT / 두 텍스트(문자열)이 같은지 비교하는 함수

엑셀 / 함수 / EXACT / 두 텍스트(문자열)이 같은지 비교하는 함수

개요 EXACT는 두 문자열이 같은지 비교하는 함수입니다. 구문 EXACT(text1, text2) text1 : 필수 요소로 첫 번째 문자열입니다. text2 : 필수 요소로 두 번째 문자열입니다. 두 문자열이 같으면 TRUE, 같지 않으면 FALSE를 반환합니다. 숫자도 문자처럼 취급하여 비교합니다. 예제 두 숫자가 같은지 비교하는 함수는 DELTA입니다.

엑셀 / 행, 열, 워크시트 숨기기, 숨기기 취소하기

엑셀 / 행, 열, 워크시트 숨기기, 숨기기 취소하기

행, 열, 워크시트 숨기기 자료를 입력하고 분석할 때, 너무 많은 데이터가 화면에 있으면 불편합니다. 또는 분석에는 필요하지만 화면에는 굳이 보이지 않아도 될 것들도 있습니다. 그럴 땐 숨기기 기능을 이용해서 화면에서 감출 수 있습니다. 어떻게 숨기는지, 숨겨놓은 것을 어떻게 다시 보이게 하는지 알아보겠습니다. 행과 열 숨기는 방법 행 숨기기 숨기려는 행을 선택한 후 마우스 우크릭합니다. 그리고 를 ...

엑셀 / 함수 / EVEN, ODD / 짝수 또는 홀수로 올림 또는 내림하는 함수

엑셀 / 함수 / EVEN, ODD / 짝수 또는 홀수로 올림 또는 내림하는 함수

개요 EVEN은 짝수로 만드는 함수, ODD는 홀수로 만드는 함수입니다. 구문 EVEN(number) ODD(number) 양수인 경우 가까운 짝수 또는 홀수로 올림하고, 음수인 경우 가까운 짝수 또는 홀수로 내림합니다. 예를 들어 EVEN(123) 은 123에서 가까운 짝수로 올림한 값 124를 반환합니다. EVEN(-123) 은 -123에서 가까운 짝수로 내림한 값 -124를 반환합니다. 즉, 인수가 부호만 차이난다면 결과도 부호만 차이납니다. 인수가 소수인 경우 정수를 반환합니다. 예를 들어 EVEN(122.1) 은 124를 ...

엑셀 / 함수 / TRIM / 공백 제거하는 함수

엑셀 / 함수 / TRIM / 공백 제거하는 함수

개요 TRIM은 문자열에 있는 공백을 제거하는 함수이다. 문자열 양 끝에 있는 공백은 다 제거한다. 문자열 사이에 있는 공백은 하나만 남기고 제거한다. 구문 TRIM(text) 예제 =TRIM(" AB CD ") AB, CD 양 끝과 사이에 한 개의 공백이 있으면, 양 끝의 공백은 제거하고, 사이에 있는 것은 그대로 둔다. =TRIM(" AB CD ") AB, CD 양 끝과 사이에 두 개의 공백이 있으면, 양 ...

엑셀 / VBA / 여러 시트의 내용을 하나의 시트에 모으는 방법

엑셀 / VBA / 여러 시트의 내용을 하나의 시트에 모으는 방법

동일한 형식에 내용만 다른 여러 시트의 데이터를 하나로 합치는 방법을 알아본다. 예를 들어 다음과 같은 엑셀 문서가 있다고 하자. 첫 번째 시트는 합쳐진 데이터가 모일 시트이고, 나머지 세 개는 데이터가 있는 시트이다. 을 클릭한다.(만약 개발 도구 메뉴가 없다면 여기의 안내대로 개발 도구를 추가한다.) 을 클릭한다. 다음과 같이 코드를 입력한다. Sub Merge() ...

엑셀 / 숫자를 한글 또는 한자로 나타내는 방법

엑셀 / 숫자를 한글 또는 한자로 나타내는 방법

수를 한글로 표시해야할 때가 간혹 있습니다. 한글로 쓰면 위변조가 어려워서 그렇다고 알고 있는데, 진짜 이유가 그것인지는 잘 모르겠습니다. 수를 한글로 나타내기 위해서 처음부터 한글로 입력할 필요는 없습니다. 엑셀에는 수를 한글로 나타내는 기능이 있기 때문입니다. 이 기능을 이용해야 엑셀에서 숫자로 취급합니다. 수를 입력한 후 마우스 우클릭해서 을 엽니다. 범주에서 를 선택한 후 형식에서 ...

엑셀 / 스파크라인 / 데이터를 시각적으로 보여주기

엑셀 / 스파크라인 / 데이터를 시각적으로 보여주기

스파크라인 스파크라인은 데이터를 시각적으로 나타내줍니다. 챠트와 비슷해서 미니 챠트라고 부르기도 합니다. 챠트와 스파크라인의 차이점 중의 하나는, 스파크라인은 셀에 속한다는 것입니다. 그리고 셀의 값이 아니라 배경으로 만들어집니다. 스파크라인 만들기 이 있습니다. 적절한 모양을 정하고 클릭합니다.(모양은 나중에 바꿀 수 있습니다.) 라는 창이 뜹니다. 범위를 선택하고 을 클릭하면 스파크라인이 만들어집니다. 스파크라인 모양 바꾸기 스파크라인을 선택하면 디자인 탭이 ...

엑셀 / 함수 / VAR.P, VAR.S, VARP, VAR / 분산과 표본분산 구하는 함수

엑셀 / 함수 / VAR.P, VAR.S, VARP, VAR / 분산과 표본분산 구하는 함수

개요 VAR.P는 분산을 구하는 함수입니다. 엑셀 2007 이전 버전이라면 VARP 함수를 사용합니다. VAR.S는 표본분산을 구하는 함수입니다. 엑셀 2007 이전 버전이라면 VAR 함수를 사용합니다. 구문 분산을 구하는 구문은 다음과 같습니다. VAR.P(number1,,...) 표본분산을 구하는 구문은 다음과 같습니다. VAR.S(number1,,...) 예제 다음은 같은 자료로 분산과 표본분산을 구하는 예제입니다. 표본분산이 좀 더 크게 나와야 정상입니다.

엑셀 / 저장 시 기본 파일 형식 설정하는 방법

엑셀 / 저장 시 기본 파일 형식 설정하는 방법

엑셀에서 작업 후 저장할 때 여러 가지 형식의 파일로 저장할 수 있다. 기본값은 보통 인데... 로 설정 매크로를 많이 사용하여 기본 저장 파일 형식을 로 기본값을 설정 하고 싶을 수 있다. 이러한 설정은 에서 한다. 왼쪽에서 을 클릭한다. [다음 ...

엑셀 / 페이지 나누는 점선 없애는 방법

엑셀 / 페이지 나누는 점선 없애는 방법

페이지 나누기 표시 엑셀에서 인쇄 미리보기를 하거나 인쇄를 한 후 다시 워크시트로 돌아오면 점선이 생긴 걸 볼 수 있습니다. 인쇄되는 영역을 표시해주는 것으로, 페이지 나누기 표시라고 합니다. 인쇄를 목적으로 만들 때는 유용한 표시이지만, 경우에 따라서는 불편하거나 필요하지 않을 수 있습니다. 페이지 나누는 점선을 없애는 방법을 알아보겠습니다. 페이지 나누기 표시 없애기 페이지 나누기 표시는 옵션에서 표시 ...