2012-07-13 12 views
9

Pracuję z VBA i trzeba zapisać dane w rodzaju key =>value do coraz najszybciej; Ten typ danych pomaga mi buforować odświeżony tekst z żądania http, zwiększyć prędkość zapytania. Ale nie wiem, jaki jest najlepszy sposób na zrobienie tego? Potrzebuję typ danych taki sam jak php array z key=>value! Dziękuję za pomoc!Jaki jest najlepszy VBA dane type`key` => `value` zapisać dane takie same jak PHP tablicy

+2

możliwe duplikat [Does VBA ma strukturę słownik?] (Http://stackoverflow.com/questions/915317/does-vba-have-dictionary-structure) –

Odpowiedz

14

Czy obejrzałeś obiekt słownika?

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 

(Źródło: http://www.techbookreport.com/tutorials/vba_dictionary.html)

+0

Dziękuję Ci! Mam to! – Davuz

+2

Nie zamieszczaj odwołań do innych witryn. To jest miejsce, w którym możesz napisać rozwiązanie. –

+3

@PawelMiechowiecki: Co jest nie tak z podawaniem adresu URL z dodatkowymi informacjami? Specjalnie dlatego, aby ten kod działał, musisz włączyć odwołanie do "Microsoft Scripting Runtime", którego krok jest opisany w podanym adresie URL ... –

Powiązane problemy