반응형

Property(프로퍼티)가 뭐야? 

프로퍼티는 객체(Object)에 속해져 있는 것 중 하나입니다. 객체는 프로퍼티 이외에도 메소드(Method)를 가지고 있습니다. 우리가 VBA로 엑셀 등을 제어할 때 프로퍼티와 메소드는 객체와 함께 그 제어를 도와주는 역할을 합니다. 

 

Property라는 영단어는 특질, 속성 등의 의미를 가지고 있습니다. 따라서 VBA에서 프로퍼티는 우리가 제어에 활용하려는 객체가 가진 특징 혹은 속성을 담고 있는 것이라고 볼 수 있습니다. 

 

실생활에서 예를 들어보면 이런 느낌입니다. 신발을 예로 들어 보겠습니다.

 

신발

  • 크기
  • 성별
  • 재질
  • 계절
  • ...

신발 하나만 해도 매우 다양한 특질 혹은 속성이 있습니다. 만약 신발의 속성을 VBA에서처럼 접근을 한다면 이런 식이 될 것입니다. 

신발.겨울용.재질= "코어텍스"

실제 VBA에서는 이런 식으로 Property에 접근을 할 수 있습니다. 

Range("A1").Address

위의 예의 경우 첫 프로퍼티에서 세부사항이 없는 경우입니다. 하지만 이런 식으로 세부사항을 가진 프로퍼티도 있습니다. 

Range("A2").Interior.Color

프로퍼티에는 값을 수정할 수 있는 프로퍼티가 있고 오직 참조만 할 수 있는 프로퍼티가 있습니다. 

 

객체(Object)가 궁금하시다면 아래의 글을 참고해 주세요!

VBA 객체 모델(Object Model) 이해하기

 

값을 수정할 수 없다고?

아래와 같은 프로퍼티의 경우는 수정이 불가능합니다. 만약 수정을 할 수 있게 된다면 셀 주소 체계가 뒤죽박죽이 되어 버릴 수 있으니 수정할 수 없게 설계가 된 것 같습니다. 

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

 

 

반응형
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기