SpecialCells(xlCellTypeBlanks) VBA 함수가 Excel에서 예상대로 작동하지 않습니다.

증상

다음과 유사한 VBA 식을 사용하는 Microsoft Excel 통합 문서에서 인접하지 않은 여러 범위를 선택하는 Microsoft VBA(Visual Basic for Applications) 매크로를 만들 때 연속되지 않은 셀에서만 수행되어야 하는 작업은 워크시트의 원래 선택 영역의 모든 셀에서 발생합니다.

expression.SpecialCells(XlCellType).expression XlCellType

는 다음 중 하나일 수 있습니다.

  • xlCellTypeAllFormatConditions
  • xlCellTypeAllValidation
  • xlCellTypeBlanks
  • xlCellTypeComments
  • xlCellTypeConstants
  • xlCellTypeFormulas
  • xlCellTypeSameFormatConditions
  • xlCellTypeSameValidation
  • xlCellTypeVisible

원인

이 동작은 매크로를 사용하여 8,192개 이상의 연속되지 않은 셀을 선택하는 경우에 발생합니다. Excel은 VBA 매크로를 통해 최대 8,192개의 연속이 아닌 셀만 지원합니다.

일반적으로 8,192개 이상의 연속 셀을 수동으로 선택하려고 하면 다음과 같은 오류 메시지가 표시됩니다.

선택 영역이 너무 큽합니다.

그러나 VBA 매크로를 사용하여 동일하거나 유사한 선택을 하는 경우 오류 메시지가 발생하지 않으며 오류 처리기를 통해 캡처할 수 있는 오류 코드가 생성되지 않습니다.

해결 방법

이 동작을 해결하려면 VBA 매크로에서 최대 8,192개 미만의 셀을 처리하는 루핑 구조를 만들 수 있습니다.

상태

이것은 의도적으로 설계된 동작입니다.