반응형
Property(프로퍼티)가 뭐야?
프로퍼티는 객체(Object)에 속해져 있는 것 중 하나입니다. 객체는 프로퍼티 이외에도 메소드(Method)를 가지고 있습니다. 우리가 VBA로 엑셀 등을 제어할 때 프로퍼티와 메소드는 객체와 함께 그 제어를 도와주는 역할을 합니다.
Property라는 영단어는 특질, 속성 등의 의미를 가지고 있습니다. 따라서 VBA에서 프로퍼티는 우리가 제어에 활용하려는 객체가 가진 특징 혹은 속성을 담고 있는 것이라고 볼 수 있습니다.
실생활에서 예를 들어보면 이런 느낌입니다. 신발을 예로 들어 보겠습니다.
신발
- 색
- 크기
- 성별
- 재질
- 계절
- ...
신발 하나만 해도 매우 다양한 특질 혹은 속성이 있습니다. 만약 신발의 속성을 VBA에서처럼 접근을 한다면 이런 식이 될 것입니다.
신발.겨울용.재질= "코어텍스"
실제 VBA에서는 이런 식으로 Property에 접근을 할 수 있습니다.
Range("A1").Address
위의 예의 경우 첫 프로퍼티에서 세부사항이 없는 경우입니다. 하지만 이런 식으로 세부사항을 가진 프로퍼티도 있습니다.
Range("A2").Interior.Color
프로퍼티에는 값을 수정할 수 있는 프로퍼티가 있고 오직 참조만 할 수 있는 프로퍼티가 있습니다.
※객체(Object)가 궁금하시다면 아래의 글을 참고해 주세요!
값을 수정할 수 없다고?
아래와 같은 프로퍼티의 경우는 수정이 불가능합니다. 만약 수정을 할 수 있게 된다면 셀 주소 체계가 뒤죽박죽이 되어 버릴 수 있으니 수정할 수 없게 설계가 된 것 같습니다.
Range("A1").Address
수정할 수 있는 프로퍼티는 어떤 게 있어?
물론 수정할 수 있는 프로퍼티들도 매우 많습니다. 예를 들면 아래와 같은 것들입니다.
Range("A1").Value
Range("A2").Interior.Color
Range("A2").Font.Color
값은 어떻게 수정하는 거야?
이런 식으로 "="를 사용해서 값을 할당합니다.
Range("A1").Value = ActiveCell.Address
Range("A1").Interior.Color = vbRed
Range("A1").Font.Color = vbBlue
반응형