엑셀 VBA 응용 프로그램 개체
WorksheetFunction| 을 ScreenUpdating을#screenupdating | DisplayAlerts| ‘계산‘
모든 객체의 어머니는 엑셀 자체입니다. 우리는 응용 프로그램 개체 호출합니다. 응용 프로그램 객체는 엑셀 관련 많은 옵션에 액세스 할 수 있습니다.
WorksheetFunction
당신은 액세스 Excel 함수 엑셀 VBA에서 WorksheetFunction 속성을 사용할 수 있습니다.
-
예를 들어,`링크를 배치 : / VBA –A-매크로 만들 워크 시트에 # 명령 버튼 [명령 단추를]`다음 코드 줄을 추가 :
Range("A3").Value = Application.WorksheetFunction.Average(Range("A1:A2"))
워크 시트에 명령 버튼을 클릭하면, 엑셀 VBA 셀 A1 및 A2 셀과 장소 A3 셀에 결과의 값의 평균을 계산합니다.
참고 : 대신 Application.WorksheetFunction.Average의, 단순히 WorksheetFunction.Average를 사용합니다. 당신이 수식 입력 줄에서 보면, 수식 자체가 세포 A3에 삽입되지 않은 것을 볼 수 있습니다. A3 셀에 수식 자체를 삽입하려면 다음 코드 줄을 사용하십시오
Range("A3").Value = "=AVERAGE(A1:A2)"
을 ScreenUpdating []을 ScreenUpdating]을
때때로 당신은 코드를 실행하는 동안 (피하기 깜박임을) 해제 화면 업데이트에 유용하게 찾을 수 있습니다. 그 결과, 코드가 빠르게 실행됩니다.
-
예를 들어,`링크를 배치 : / VBA –A-매크로 만들 워크 시트에 # 명령 버튼 [명령 단추를]`다음 코드 줄을 추가
Dim i As Integer For i = 1 To 10000 Range("A1").Value = i Next i
워크 시트에 명령 버튼을 클릭하면, 엑셀 VBA 각 값을 두 번째의 작은 부분을 표시하고 시간이 좀 걸릴 수 있습니다.
-
프로세스의 속도를 다음과 같이 코드를 업데이트합니다.
Dim i As Integer Application.ScreenUpdating = False For i = 1 To 10000 Range("A1").Value = i Next i Application.ScreenUpdating = True
그 결과, 코드가 훨씬 빠르게 실행하고 당신은 단지 최종 결과 (10000)를 볼 수 있습니다.
DisplayAlerts
코드를 실행하는 동안 경고 표시를하지 엑셀 VBA를 지시 할 수 있습니다.
-
예를 들어,`링크를 배치 : / VBA –A-매크로 만들 워크 시트에 # 명령 버튼 [명령 단추를]`다음 코드 줄을 추가 :
ActiveWorkbook.Close
워크 시트에 명령 버튼을 클릭하면, 엑셀 VBA는 Excel 파일을 닫고 변경 사항을 저장하도록 요청합니다.
-
코드를 실행하는 동안 엑셀 VBA는이 경고를 표시하지 않도록 지시 다음과 같이 코드를 업데이트합니다.
Application.DisplayAlerts = False ActiveWorkbook.Close Application.DisplayAlerts = True
그 결과, 엑셀 VBA는 변경 사항을 저장하도록 요청하지 않고, 엑셀 파일을 닫습니다. 모든 변경 사항은 손실됩니다.
계산
기본적으로, 계산이 자동으로 설정됩니다. 그 결과, Excel에서 자동마다 공식의 변화에 영향을 미치는 값을 통합 문서를 다시 계산합니다. 통합 문서가 많은 복잡한 수식이 포함 된 경우 수동으로 계산을 설정하여 매크로를 속도를 높일 수 있습니다.
-
예를 들어,`링크를 배치 : / VBA –A-매크로 만들 워크 시트에 # 명령 버튼 [명령 단추를]`다음 코드 줄을 추가 :
Application.Calculation = xlCalculationManual
워크 시트에 명령 버튼을 클릭하면, 엑셀 VBA 수동으로 계산을 설정합니다.
-
파일, 옵션, 수식을 클릭하여 확인할 수 있습니다.
당신은 A1 셀의 값을 변경하는 경우 3. 이제, B1 셀의 값이 다시 계산되지 않습니다.
수동 F9 키를 눌러 통합 문서를 다시 계산할 수 있습니다.
-
대부분의 경우, 당신은 당신의 코드의 끝에서 다시 자동으로 계산을 설정합니다. 간단하게이를 달성하기 위해 다음 코드 줄을 추가합니다.
Application.Calculation = xlCalculationAutomatic