Bonjour à tous,
Dans un projet VBA, j'ai un bug que je n'arrive pas à résoudre et dont pourtant je crois connaître l'origine.
La partie du programme en question:
-Remplit un array selon une union de colonnes discontinues de Range (colonnes vertes + blanches)
-Trie l'array selon les colonnes vertes
-Somme les lignes selon les colonnes vertes à l'aide de dictionnaires
-Ecrase l'ancien array en le remplissant par les dictionnaires
(-Affiche les valeurs de l'array dans une autre feuille)
J'ai remarqué qu'il n'y a pas de bug lorsque les cellules vertes de la ligne 2 ne sont pas vides.
Du coup, je vous ai fournis en pièce jointe deux feuilles de test, une avec bug (test 1), une sans (test 2).
Le bug survient sur la ligne:
C'est une erreur d'incompatibilité de type 13.
J'ai du mal à comprendre pourquoi il y a un bug puisque l'array est trié avant le remplissage des dictionnaires.
On voit bien avec le débuggeur que les array extrait des feuilles test1 et test2 sont identiques après le tri.
Est-ce que quelqu'un pourrait m'expliquer pourquoi il y a l'erreur?
Merci d'avance
avaya
Dans un projet VBA, j'ai un bug que je n'arrive pas à résoudre et dont pourtant je crois connaître l'origine.
La partie du programme en question:
-Remplit un array selon une union de colonnes discontinues de Range (colonnes vertes + blanches)
-Trie l'array selon les colonnes vertes
-Somme les lignes selon les colonnes vertes à l'aide de dictionnaires
-Ecrase l'ancien array en le remplissant par les dictionnaires
(-Affiche les valeurs de l'array dans une autre feuille)
J'ai remarqué qu'il n'y a pas de bug lorsque les cellules vertes de la ligne 2 ne sont pas vides.
Du coup, je vous ai fournis en pièce jointe deux feuilles de test, une avec bug (test 1), une sans (test 2).
Le bug survient sur la ligne:
Code:
TableauEntiteSomme = Application.Transpose(Array(mondicoA.items, mondicoB.items, mondicoC.items, mondicoD.items, mondicoE.items, mondicoF.items, mondicoG.items, mondicoH.items, mondicoI.items))
J'ai du mal à comprendre pourquoi il y a un bug puisque l'array est trié avant le remplissage des dictionnaires.
On voit bien avec le débuggeur que les array extrait des feuilles test1 et test2 sont identiques après le tri.
Est-ce que quelqu'un pourrait m'expliquer pourquoi il y a l'erreur?
Merci d'avance
avaya