2011-01-07 1 views
0

Je cette condition dans une instruction if:article on ne trouve pas dans le dictionnaire

If myDict.Exists(Cells(d.Row, d.Column - 1)) Then 

Lors d'une étape particulière dans le code (tout en renforçant par là), le code suivant dans la fenêtre immédiate

MsgBox Cells(d.Row,d.Column-1) 

me donne une valeur de "1/3/2011"

Et à cette étape très,

MsgBox myDict.Item("1/3/2011") 

renvoie également une valeur.

Cependant, ma condition if si affichée ci-dessus n'est pas vraie. Pourquoi??

Dois-je lancer le résultat des cellules (d.Row, d.Column-1) en tant que certain type?

Répondre

2

Les cellules renvoient un objet. Habituellement, je jette simplement la cellule dans une plage: ((XL.Range) Cells (d.Row, d.Column-1)). Value2.ToString(). Ensuite, comparez les chaînes.

+0

Merci. J'ai trouvé une solution de contournement qui ne m'obligeait pas à utiliser un dictionnaire, mais merci pour la solution si j'en avais besoin à l'avenir. – xbonez