comparaison d'une valeur de listbox multicolonne avec une variable tableau

Climaudo

XLDnaute Occasionnel
Bonsoir le forum,

Encore un souci....

Dans mon projet, je me retrouve bloqué lors d'une comparaison d'une valeur d'une listbox multicolonnes avec une variable tableau.

Le but est de comparer, par une première boucle, la valeur de la colonne 6 de la listbox à la valeur, seconde boucle, de la colonne 7 d'une variable tableau reprenant le contenu de la feuille Base (A2:Z1000) ; et si c'est égal, lance le résultat souhaité, sinon continue les boucles.

En faisant plusieurs essais avec des msgbox, j'arrive bien à extraire la valeur de la listbox et à extraire la valeur dans le tableau, mais quand je souhaite les comparer, soit il ne se passe rien, soit une erreur se produit à l'exécution.

ci joint mon fichier, le problème se situe dans la procédure du cmdbutton1.

Merci d'avance pour votre aide
 

Pièces jointes

  • essaiprgcarte.zip
    40.7 KB · Affichages: 63

Spitnolan08

XLDnaute Barbatruc
Re : comparaison d'une valeur de listbox multicolonne avec une variable tableau

Bosoir Climaudo,

Pas tout compris à ton code et pas trop le temps de me pencher dessus mais essaye ça et dis nous :
Remplace
Code:
If NewTab(n, 7) = ListBox1.Column(6, a)
par
Code:
If NewTab(n, 7) = CDbl(ListBox1.Column(6, a)) Then
Cordialement
 

Climaudo

XLDnaute Occasionnel
Re : comparaison d'une valeur de listbox multicolonne avec une variable tableau

Bonsoir Spitnolan08,

Encore une fois, merci. ça marche parfaitement avec ton code

Par contre une petite question, à quoi correspond ce CDbl(...). J'ai cherché dans l'aide en ligne et pas de réponse trouvée

Merci

Edit : bon un début de réponse glané, il s'agirait d'une conversion en type double. Ce que je ne comprends pas, pourquoi la valeur se lit bien dans un msgbox et pas en comparaison ??
Et désolé pour le code, je n'ai pas pris le temps de le commenter pour qu'il soit plus clair (si clair il est, et j'en doute lol)
 
Dernière édition:

Spitnolan08

XLDnaute Barbatruc
Re : comparaison d'une valeur de listbox multicolonne avec une variable tableau

Re,

En fait, il n'y a pas de pb dans le MsgBox car il n'y a pas de comparaison : tu ne fais qu'afficher une valeur.
Dans ton code tu comparais un élément de type String (Chaîne de caractères) à un élément numérique. C'est pourquoi ça ne pouvait fonctionner. en effet tous les éléments renvoyés par des contrôles dans des UF sont de type string.

La fonction Cdbl est une fonction de conversion. Il en existe d'autres. J'ai choisi celle là car c'est la plus large en spectre numérique mais tu pourrais en adapter une plus restreinte telle que CInt. Tout dépend des valeurs que peut prendre ta variable.

Cordialement
 

Discussions similaires

Réponses
25
Affichages
727

Statistiques des forums

Discussions
312 370
Messages
2 087 696
Membres
103 642
dernier inscrit
nolem