Bonjour,
Comme l'indique le sujet souhaiterai complètement supprimer une entrée d'un dictionnaire.
Exemple :
Affiche :
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 Sub TT() Dim d As New Dictionary, Key As Variant d.Add 0, 5 d.Add 1, 10 d.Add 2, 15 d.Add 3, 20 d.Add 4, 25 d.Add 5, 30 d.Remove (3) For i = 0 To d.Count Debug.Print "clé " & i & " valeur [" & d(i) & "]" Next End Sub
Or je souhaiterai obtenir :clé 0 valeur [5]
clé 1 valeur [10]
clé 2 valeur [15]
clé 3 valeur []
clé 4 valeur [25]
clé 5 valeur [30]
à la façon de array_splice() en php qui permet de supprimer la donnée, la clé et de réordonner les clés.clé 0 valeur [5]
clé 1 valeur [10]
clé 2 valeur [15]
clé 3 valeur [25]
clé 4 valeur [30]
J'ai 2 boucles for imbriquées.
La deuxième permet de parcourir le dictionnaire dont je souhaite supprimer les éléments déjà traités (pour éviter de les traiter une seconde fois)
IsEmpty(d(3)) renvoi vrai, mais je préfèrerai faire une suppression de la clé et de la valeur.
Partager