Здравствуйте.
В процессе процедуры формирую Dictionary, в котором текстовым ключам соответствуют наборы данных. Эти наборы надо изменять, и наиболее логичным представляется динамический массив.
Примерный код, который я хотел бы видеть:
В процессе процедуры формирую Dictionary, в котором текстовым ключам соответствуют наборы данных. Эти наборы надо изменять, и наиболее логичным представляется динамический массив.
Примерный код, который я хотел бы видеть:
Код |
---|
Sub test() Dim test_dict As Object Set test_dict = CreateObject("Scripting.Dictionary") Dim start_vals_arr() As Single ReDim start_vals_arr(0) start_vals_arr(0) = 15.87 test_dict.Add "Test_key", start_vals_arr aaa = test_dict.Item("Test_key") ReDim Preserve aaa(1) aaa(1) = 48.56 test_dict.Item("Test_key") = aaa 'для Watches bbb = test_dict.Item("Test_key") End Sub |
Он не работает, выдаёт ошибку ReDim.
В принципе, удалось заставить работать грандиозный костыль с объявлением статического массива длиной (старый + 1) и копированием в него всё содержимое старого + новое значение, но это реально грандиозный костыль. Подскажите пожалуйста, есть ли более человеческий способ добраться до динамического массива, который является значением словаря, и редимить/изменять значения в нём?