vba [vba] [펌] Cells.Count 와 Cells.CountLarge 메서드(method)의 차이
페이지 정보
본문
엑셀 2003버전 이하에서는 즉석창(Immediate Pane)에서 ? Cells.Count 라고 입력하고 엔터치면,
에러가 발생하지 않고 전체 셀의 개수를 보여주었지만, 2007버전 이상에서는 아래의 에러가 발생.
왜그런지 몰랐는데 이유를 찾았다. Count는 데이터 타입이 Long이다. Long은 4바이트로
-2,147,483,648 에서 2,147,483,647 까지의 숫자를 표시하는데 엑셀 2007 버전에서는 한 시트의 전체 셀의 개수가 무려 17,179,869,184 개이다. 그러므로 Count 로는 전체셀의 개수를 표시할 수 없다. 그래서 2007에서 새로 도입된 method가 CountLarge이다. 즉석창에서 ? Cells.CountLarge라고 입력시 아래와 같이 에러없이 전체 셀의 개수를 보여준다.
결론적으로, "일반적으로는 기존의 Count method를 사용하여도 무방하지만 2007버전 이상에서 한 시트에서 대략 2000개 이상의 열을 count할 시(또는, 10개의 시트 x 200개 이상의 열)에는 Count 대신 CountLarge 메써드를 사용해야 한다."는 것.
출처 : h t t p s : / / b l o g . n a v e r . c o m / r o s a 0 1 8 9 / 6 0 1 3 8 8 8 9 2 7 3
- 이전글[vba] 활성화된 엑셀창의 선택한 셀(Selection) / Selection 오류시 / TextBox를 활용한 지정한 영역 한글자씩 입력받기 22.10.16
- 다음글CDO 클래스 사용 smtp 메일 보내기 22.03.17
댓글목록
등록된 댓글이 없습니다.