Bonjour à tous

J'ai un fichier de BDD qui peut évoluer chaque jour (ajout ou suppression de données). 6 colonnes, qqes centaines de lignes.

A partir de ce fichier je crée un dictionnaire grâce à la macro suivante :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
Public Sub CréationTableInfoClients()
Dim A
Dim k As Long
 
WSClients1.Activate
 
Set TableInfoClients = CreateObject("scripting.dictionary")
A = [A1:F50000]
For k = 1 To 50000
TableInfoClients.Item(A(k, 1)) = Array(A(k, 1), A(k, 2), A(k, 3), A(k, 4), A(k, 5), A(k, 6))
Next k
 
End Sub
Jusque là tout va bien.

Je lis ensuite des données dans un autre fichier, qui correspondent à mon A(k,1), la clé du dico.
Et je récupère une donnée via la ligne suivante :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
ConfigurationClient = TableInfoClients(CodeClient)(2)
Vu que le fichier de BDD évolue, il arrive que le "CodeClient" ne soit pas présent dans le dictionnaire.

Il en ressort donc une erreur d'incompatibilité de type, ce qui est normal.
Comment pourrait on résoudre ceci ?

Je souhaiterai simplement que si le "CodeClient" n'est pas présent dans le dictionnaire, alors ConfigurationClient = ""

J'ai essayé divers trucs :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
If ... isnothing then...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
If TableInfoClients.exists(CodeClient) then ... Else...
Rien ne fonctionne.

Je vous remercie

Yann