Je ne sais pas si ce sujet a sa place ici mais comme j'ai rencontré ce cas en faisant du VBA, je pose ma question ici.
Ayant oublié de déclarer une variable de boucle (qui est utilisée dans un calcul) je me retrouvé avec le problème énoncé dans le titre: 2012 n'est pas égal a 2012, après déclaration de ma variable le problème est résolu mais n'étant pas informaticien de formation j'ai du mal a saisir pourquoi.
Le premier 2012 vientd'un TCD (.PivotItems(i).Value) et l'autre est un calcul (y - j) avec y un integer j un variant.
A partir du moment où j est déclarée int, long, double pas de problème mais si j est non déclaré ou déclaré variant alors j'obtient l'erreur. En fait ce que je ne comprends pas c'est en quoi 2012 integer est différent de 2012 variant? De plus si j'ai du controle sur la déclaration de mes variable, je n'en ai aucun (a ma connaissance) sur le type de .PivotItems(i).Value, est-il possible de voir quel type vba donne à cette valeur? et est-il possible de forcer un certain type? (sans passer par une variable intermédiaire)
Merci d'avance.
Partager