Private Sub Worksheet_Activate()
If Worksheets("Input").Range("S5").Value = "Yes" Then
MsgBox "Please make sure you've completed the historical deductible amounts for EL"
End If
Worksheets("Input").Calculate
Worksheets("EL").Calculate
Worksheets("PPL").Calculate
Worksheets("Auto").Calculate
Worksheets("AL").Calculate
Worksheets("APD").Calculate
Worksheets("Loss Layering").Calculate
Worksheets("Sheet2").Calculate
Worksheets("Premium").Calculate
End Sub
매우 큰 통합 문서의 속도를 높이기 위해 자동 계산을 사용하지 않도록 설정하고 이동시 시트를 계산하는 계층을 만들었습니다 내 통합 문서. 내 문제는 sumif 또는 섬광 제품과 같은 중장비 공식의 경우 값이 활성 시트 내에서 계산되지 않고 0으로 유지된다는 것입니다. 내가 application.calculate 시도하고 CalculateFull,이 두 가지 작동하지만 그들은 너무 많은 시간을 소요 찾으십시오. 나는 가능한 한 빨리, 간단하고 사용자 친화적 인 템플릿을 유지하면서이 작업을 수행하는 방법을 찾고 있습니다. 어떤 제안?Excel VBA - worksheet.calculate가 모든 수식을 계산하지 않습니다
그 모호한 점에 대해 사과드립니다. 이 시트는 "프리미엄"입니다. 계산 순서를 두 번 확인했는데 모두 정확합니다. 귀하의 일반적인 포인트에 관해서는, 나는 worksheet.calculate가 application.calculate보다 상당히 빠릅니다 - 특히 11 초 지역의 어딘가에 –
그래서 무거운 2 개의 시트를 끄십시오. worksheet.enablecalculation = false를 사용하여 시트를 만든 다음 Application.calculate를 사용합니다. –
사실, 종속 시트 중 하나가 누락되었습니다. 이름이 포함 된 계산에 숨겨져 있기 때문에 즉시 명백하지 않았습니다. 많은 시간이 내 통합 문서를 통해 트롤링하고 발견했습니다. 많은 감사합니다 !! –