지식은 공유되었을 때 그 힘을 발휘한다.



AutoCAD ActiveX 맛보기 강좌(11)

Selection속성으로 선택된 셀에 대해 작업하기
우리는 Excel을 사용할 때 먼저 셀을 선택하고 툴바나 메뉴 버튼을 눌러 명령을 실행하는 경우가 종종 있습니다. 이렇게 "선택된 셀"에 대해서 작업하기 위해서는 Selection속성 필요합니다. Selection속성는 현재 선택된 셀들을 나타내는 개체입니다.

간단하게 테스트를 해볼까요? A1부터 A10까지 선택을 하고 VB Editor의 직접실행창에서 ?selection.address라고 입력해봅니다. address속성은 지난번 강좌에서 다루었던 것으로 어떤 개체의 주소를 리턴해주는 속성입니다.



어떻가요? $A$1:$A$10이라는 주소값을 보여주고 있지요? 이제 선택된 셀들에 대해서 작업하는 연습프로젝트(?)를 하나 만들어보도록 할까요? 선택된 셀들의 값들을 모두 더해서 보여주는 프로그램을 만들어보도록 하겠습니다. 선택된 셀들을 하나 하나 더해나가면 되겠지요?
일단 cells()라는 속성을 알아보도록 합시다. 아래그림은 cells에 대한 도움말입니다.



어떤가요? 이해가 좀 가시는지? 모르시겠다구요? cells는 어떤개체에 대해서 몇행 몇열의 개체를 반환해줍니다. 예를 들어 activesheet.cells(2,1)하면 현재 활성화된 쉬트의 2행1열 즉 A2의 개체를 돌려줍니다. 하지만 selection.cells(2,1)이라고 하면 현재 선택된 범위 내에서 2행1열의 개체를 돌려줍니다. 한번 시험해볼까요? 현재 우리는 아래와 같이 a1부터 a10까지 1부터 10의 숫자를 썼습니다.



그리고 vb 직접실행창에서 activesheet.cells(2,1) 라고 입력하면 아래의 왼쪽 그림과 같이 2라는 값을 보여줍니다.



그렇다면 A3부터 A10을 선택하고 난 다음에 selection.cell(2,1)이라고 입력하면 어떻게 돌까요? 결과는.. 아래그림과 같이 현재 선택된 셀중 2행1열의 값인 A4의 값을 보여줍니다.

  

이제 선택된 셀들에 대해서 하나하나 접근하는 방법을 알아냈습니다. 선택된 셀들의 값을 더해주는 작업만 하면 이번프로젝트는 완성입니다.

오늘은 여기서 마치기로 하고 내일 계속하도록 하겠습니다.



dolljong@dreamwiz.com