2012-03-13 2 views
2

안녕하세요 변수를 사용하여 개체를 만들 수 있습니까? 여러 이름의 배열이 있고 각 이름에 대해 개체를 만들고 싶습니다. 그래서 내가 ("Max", "Tim", "Fred") 을 가지고 있고 그 매우 프로그래밍의 모든 좋은 습관에 대한 경우 (이개체 목록 만들기

Dim Max as CmyClass 
Dim Tim as CmyClass 
Dim Fred as CmyClass 

처럼 그것을 매뉴얼을하고 비슷한 얻을 결과에 해당 배열을 반복하고 싶습니다, 주시기 바랍니다 나 내가 아는 한 그것은 지금까지 좋은 프로그램에 대해이 아니다)이 제대로

감사

+0

같은

뭔가 난 당신이 배열 수행 할 작업을 이해합니다. 더 자세하게 얘기해 주 시겠어요? – assylias

+0

"이름"이 모두 유일하다면 Scripting.Dictionary를 사용하는 것이 좋습니다 –

답변

2

을 수행하는 방법을 알고,하지만 당신은 VBA의 경우 배열 될 것이라고에서 개체를 저장하는 무언가를 필요 또는 컬렉션. 나는 확실하지 않다이

Sub test() 
    Dim col As Collection 

    Set col = New Collection 

    For i = 0 To 4 
     Dim Name As Class1 
     Set Name = New Class1 
     col.Add Name, "test" & i 
    Next i 
End Sub 
+0

답장에 많은 감사를드립니다. 이것을 오늘 구현하려고 노력할 것이다. – user1266138

1
Sub Tester() 

    Dim d As Object 
    Dim o As CmyClass 
    Dim arr, k, x 

    Set d = CreateObject("scripting.dictionary") 

    arr = Array("Max", "Tim", "Fred") 

    For x = LBound(arr) To UBound(arr) 
     Set o = New CmyClass 
     'set o properties etc 
     o.Name = "Name is " & arr(x) 
     d.Add arr(x), o 
    Next x 


    For Each k In d.keys 
     Debug.Print k, d(k).Name 
    Next k 

End Sub