VBA – 자동 계산 끄기(또는 켜기)

Written by

Editorial Team

Reviewed by

Steve Rynearson

Translated by

Younjung Kim

Last updated on 3월 9, 2023

셀 값을 업데이트할 때마다 Excel은 통합 문서를 다시 계산하는 프로세스를 거칩니다. Excel 내에서 직접 작업할 때는 99.9%의 경우 이 프로세스가 수행되기를 원합니다(매우 큰 통합 문서로 작업하는 경우는 예외). 하지만 이렇게 하면 VBA 코드의 속도가 매우 느려질 수 있습니다. 매크로를 시작할 때 계산을 수동으로 설정하고 매크로가 끝날 때 자동 계산 설정을 복원하는 것이 좋습니다. 통합 문서를 다시 계산해야 하는 경우 Excel에 수동으로 계산하도록 지시할 수 있습니다. 

자동 계산 끄기

매크로를 xlmanual로 설정하여 매크로의 자동 계산을 끌 수 있습니다. 다음 VBA 코드를 사용하면 됩니다:

Application.Calculation = xlManual

자동 계산 다시 켜기

자동 계산을 다시 켜려면 xlAutomatic으로 설정합니다:

Application.Calculation = xlAutomatic

프로시저의 맨 처음에 자동 계산을 비활성화하고 마지막에 자동 계산을 다시 활성화하는 것이 좋습니다. 다음과 같이 표시됩니다:

자동 계산 비활성화 매크로 예제

Sub Auto_Calcs_Example()
    Application.Calculation = xlManual

    '실행할 코드


    Application.Calculation = xlAutomatic
End Sub

수동 계산

자동 계산이 비활성화되어 있는 경우 Calculate 명령을 사용하여 Excel이 강제로 다시 계산하도록 할 수 있습니다:

Calculate

개별 워크시트만 다시 계산하도록 Excel에 지시할 수도 있습니다:

Worksheets("sheet1").Calculate

VBA에 범위만 다시 계산하도록 지시할 수도 있습니다(VBA 계산 방법에 대한 문서를 읽으려면 클릭하세요).

코드는 다음과 같습니다:

Sub Auto_Calcs_Example_Manual_Calc()
    Application.Calculation = xlManual

    '실행할 코드

    '수동 계산
    Calculate
    
    '더 실행할 코드


    Application.Calculation = xlAutomatic
End Sub

VBA 설정 – 코드 속도 향상하기

코드 속도를 높이는 것이 목표라면 다음과 같은 다른 설정도 조정하는 것을 고려해야 합니다:

화면 업데이트를 비활성화하면 속도에 큰 차이를 만들 수 있습니다:

Application.ScreenUpdating = False

상태 표시줄을 끄는 것도 차이를 만들 수 있습니다:

Application.DisplayStatusBar = False

통합 문서에 이벤트가 포함된 경우 프로시저를 시작할 때 이벤트를 비활성화해야 합니다(코드 속도를 높이고 무한 루프를 방지하기 위해서):

Application.EnableEvents = False

마지막으로, Excel에서 페이지 나누기 기능을 다시 계산하려고 할 때 VBA 코드의 속도가 느려질 수 있습니다(참고: 모든 프로시저가 영향을 받는 것은 아님니다). DisplayPageBreaks를 끄려면 다음 코드 줄을 사용하세요:

ActiveSheet.DisplayPageBreaks = False

간편한 VBA 코딩

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

alt text

 

자세히 알아보기!

vba-free-addin

VBA 코드 예시 추가 기능

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

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

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

무료 다운로드

VBA 코드 예시로 돌아가기

AI in the VBA Editor!

AutoMacro is the ultimate VBA add-in.

AI, Generators, UI Builders, Code Library, and More!

Learn More

AutoMacro: AI in the VBA Editor!

Learn More