VBA 시트 선택하기, 시트 활성화 및 활성화된 시트 가져오기

Written by

Editorial Team

Reviewed by

Steve Rynearson

Translated by

Younjung Kim

Last updated on 3월 8, 2023

이 페이지에서는 VBA의 ActiveSheet 개체에 대해 설명합니다. 또한 워크시트를 활성화하고, 선택하고, 이동하는 방법(기타 등등)에 대해서도 설명합니다. VBA에서 워크시트로 작업하는 방법에 대한 더 자세한 내용은 VBA 워크시트 가이드를 참조하세요.

ActiveSheet

VBA에서 ActiveSheet는 현재 활성화된 워크시트를 나타냅니다. 한 번에 하나의 시트만 활성화할 수 있습니다.

워크시트 활성화 하기 (ActiveSheet 설정하기)

활성 시트를 설정하려면 Worksheet.Activate를 사용합니다:

Worksheets("Input").Activate

시트 활성화하기 명령은 실제로 시트로 “이동”하여 표시되는 시트를 변경합니다.

vba activate sheet

위의 예에서는 시트(탭) 이름을 사용했습니다. 대안으로 워크시트의 VBA 코드 이름을 사용할 수 있습니다:

Sheet1.Activate

vba activesheet

활성 시트 이름

아래의 명령어를 통해 활성화된 시트의 이름을 가져올 수 있습니다.:

msgbox ActiveSheet.name

선택한 시트 vs 활성화된 시트

하나의 시트만 활성 시트가 될 수 있습니다. 그러나 한 번에 여러 워크시트를 선택할 수 있습니다.

여러 워크시트를 선택한 경우 “맨 앞에 있는” 워크시트만 활성 워크시트로 간주됩니다(활성 시트).

vba selected sheets

워크시트 선택하기

워크시트를 활성화하는 대신 선택하려는 경우  .Select 명령어를 사용합니다.

탭 이름으로 워크시트 선택

시트 탭 이름을 기준으로 워크시트를 선택합니다.

Sheets("Input").Select

vba select sheet

인덱스 번호로 워크시트 선택

다른 탭에 대한 위치를 기준으로 워크시트를 선택합니다.

Worksheets(1).Select

vba select sheet index number

VBA 코드명으로 워크시트 선택

Sheet1.Select

코드명으로 워크시트를 선택하면 워크시트 이름 변경으로 인한 오류를 방지할 수 있습니다.

현재 워크시트 선택하기

현재 워크시트를 선택하려면 ActiveSheet 개체를 사용합니다:

ActiveSheet.Select

 

시트 활성화/선택 예제 더 보기

ActiveSheet를 변수로 설정

이렇게 하면 워크시트 개체 변수에 ActiveSheet가 할당됩니다.

Dim ws As Worksheet

Set ws = ActiveSheet

활성시트 이름 변경

아래의 명령어로 활성시트 이름을 변경할 수 있습니다.

ActiveSheet.Name = "NewName"

활성시트에 With문을 활용한 명령어

With 문을 사용하면 객체(예: Sheets 또는 ActiveSheet)로 작업할 때 코드를 간소화할 수 있습니다.

With ActiveSheet
    .Name = "StartFresh"
    .Cells.Clear
    .Range("A1").Value = .Name
End With

각 코드 줄 앞에 “ActiveSheet”를 반복할 필요가 없다는 점을 주목하세요. 긴 명령 목록으로 작업할 때 시간을 크게 절약할 수 있습니다.

선택한 시트들에 반복명령어 사용

다음 매크로는 선택한 모든 시트들을 반복하여 이름을 표시합니다.

Sub GetSelectedSheetsName()
    Dim ws As Worksheet

    For Each ws In ActiveWindow.SelectedSheets
         MsgBox ws.Name
    Next ws

End Sub

다음 시트로 이동하기

아래 코드를 통해 다음 시트로 이동합니다. 현재 활성시트가 마지막 시트인 경우 통합 문서의 첫 번째 시트로 이동합니다.

If ActiveSheet.Index = Worksheets.Count Then
    Worksheets(1).Activate
Else
    ActiveSheet.Next.Activate
End If

간편한 VBA 코딩

온라인에서 VBA 코드를 더 이상 검색하지 않아도 됩니다. 초보자도 최소한의 코딩 지식으로 프로시저를 처음부터 코딩할 수 있습니다. 시간 절약이 가능하고 모든 사용자를 위한 VBA 코드 작성기인 AutoMacro에 대해 자세히 알아보세요!

Select Activate Worksheet

 

자세히 알아보기!


<<VBA 예제로 돌아가기

vba-free-addin

VBA 코드 예시 추가 기능

본 웹사이트에 있는 모든 코드 예시에 쉽게 접근해보세요.

메뉴로 이동하여 클릭만 하면 코드는 모듈에 바로 입력됩니다. .xlam 추가 기능.

(설치가 필요 없습니다!)

무료 다운로드

VBA 코드 예시로 돌아가기