2012-07-13 18 views
9

ile aynı veriyi kaydetmek için kullanıyorum VBA ile çalışıyorum ve key türünde veri kaydetmem gerekiyor =>value en hızlı şekilde; Bu veri türü, http isteklerinden gelen yanıt metnini önbelleğe almamı ve sorgu hızını artırmamı sağlar. Ama bunu yapmanın en iyi yolu nedir bilmiyorum? key=>value ile php dizisi ile aynı veri türüne ihtiyacım var! Yardımınız için teşekkürler!En iyi VBA veri türü olan'key` => `değer ', PHP dizisi

+2

olası yinelenen [mu VBA Sözlük yapıya sahip?] (Http://stackoverflow.com/questions/915317/does-vba-have-dictionary-structure) –

cevap

14

Sözlük nesnesine baktınız mı?

Sub DictExample1() 

Dim dict As Dictionary 
Dim v As Variant 

    'Create the dictionary   
    Set dict = New Dictionary 

    'Add some (key, value) pairs 
    dict.Add "John", 34 
    dict.Add "Jane", 42 
    dict.Add "Ted", 402 

    'How many items do we have? 
    Debug.Print "Number of items stored: " & dict.Count 

    'We can retrieve an item based on the key 
    Debug.Print "Ted is " & dict.Item("Ted") & " years old" 


    'We can test whether an item exists 
    Debug.Print "We have Jane's age: " & dict.Exists("Jane") 
    Debug.Print "We have Zak's age " & dict.Exists("Zak") 

    'We can update a value by replacing it 
    dict.Item("Ted") = dict.Item("Ted")/10 

    Debug.Print "Ted's real age is: " & dict.Item("Ted") 

    'We can add more items 
    dict.Add "Carla", 23 

    'And we can iterate through the complete dictionary 
    For Each v In dict.Keys 
     Debug.Print "Name: " & v & "Age: "; dict.Item(v) 
    Next 

End Sub 

(Kaynak: http://www.techbookreport.com/tutorials/vba_dictionary.html) ait

+0

Teşekkür ederim! Anladım! – Davuz

+2

Lütfen başka sitelere gönderme yapmayın. Çözümü yazabileceğiniz yer burası. –

+3

@PawelMiechowiecki: Daha fazla bilgi içeren bir URL sağlamada sorun nedir? Özellikle bu kodun çalışması için "Microsoft Komut Dosyası Çalışma Zamanı" referansını verilen URL'de açıklanan adımı etkinleştirmeniz gerekir ... –