다음은 작동하는 다른 방법입니다. classobject의 Properties
중 하나로 스크립트 사전 개체를 사용하십시오. 키 문자열이며 값이 임의의 다른 타입 (객체 범위, 통합, 정수 변형/배열 등)
그래서 만약 사전을 사용할 수있을 수 키/값 쌍의 요소를 저장 The Dictionary Object is pretty neat, 이러한 모든 명명 된 특성을 포함하는 개체. 이미 존재하지 않는 경우 사전 키가 자동으로 항목을 추가 호출
Sub ExampleSub(text As String)
ClassObject.Attributes(text) = 1
End Sub
,하지만 :
Private pAttributes as Object
Sub Class_Initialize()
'## Initialize this object to avoid a 91 error
Set pAttributes = CreateObject("Scripting.Dictionary")
End Sub
Public Property Get Attributes() As Object
Set Attributes = pAttributes
End Property
Public Property Let Attributes(lAttributes As Object)
Set pAttributes = lAttributes
End Property
그런 다음 코드에서 당신이 간단하게 수행 할 수 클래스 모듈에서 다음과 같은 코드를 추가 더 많은 제어가 필요하다면 다음을 할 수 있습니다 :
Sub AnotherExample(text as String)
If ClassObject.Attributes.Exists(text) Then
MsgBox text & " already exists!", vbInformation
Else:
ClassObject.Attributes(text) = 1
End If
End Sub
그런 텍스트 한정자로 개체를 참조 할 수는 없습니까? 귀하의 질문은 실제로 가능하지 않은 대답을 전제로합니다. 데이터 구조, 해결하려는 문제 등을보다 자세하게 설명 할 수 있습니까? 우리가 실제로하려는 일에 대해 더 많이 안다면 아마도 더 나은 해결책이있을 것입니다. –
'CallByName'을보세요 - http://support.microsoft.com/kb/186143 –