Bonjour,
Je voudrais savoir comment vider correctement la mémoire après avoir utilisé un objet de type Dictionary, contenant lui-même des objets de type Dictionary. Grossièrement, j'ai déclaré mes variables de cette manière :A la fin du traitement, je ne sais pas s'il suffit de vider la liste principale :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 ' Declaration et initialisation Dim list As Object: Set list = CreateObject("Scripting.Dictionary") Dim sublist1 As Object: Set sublist1 = CreateObject("Scripting.Dictionary") Dim sublist2 As Object: Set sublist2 = CreateObject("Scripting.Dictionary") Dim sublist3 As Object: Set sublist3 = CreateObject("Scripting.Dictionary") ' Ajout dans la sous liste 1 sublist1.Add "Name", "Module 1" sublist1.Add "Optional", False ' Ajout dans la sous liste 2 sublist2.Add "Name", "Module 2" sublist2.Add "Optional", True ' Ajout dans la sous liste 3 sublist3.Add "Name", "Module 3" sublist3.Add "Optional", False ' Ajout des sous listes dans la liste principale list.Add "Mod1", sublist1 list.Add "Mod2", sublist2 list.Add "Mod3", sublist3ou bien de vider aussi les sous listes :
Code : Sélectionner tout - Visualiser dans une fenêtre à part Set list = Nothingou encore de vider les sous listes et en plus les éléments de la liste principale :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 Set sublist1 = Nothing Set sublist2 = Nothing Set sublist3 = Nothing Set list = Nothing
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 Set sublist1 = Nothing Set sublist2 = Nothing Set sublist3 = Nothing For Each key In list list.Item(key) = Nothing Next Set list = Nothing
Partager