1er pas en VBA

3classeur1.xlsm (15.70 Ko)

Bonjour le forum,

J'avais posté hier après midi pour un souci de macro basique, je débute à peine de cette semaine dans le VBA, je teste de petites fonctions simples mais de plusieurs manières différentes, hors je n'ai pas retrouvé mon post, j'ai peut être fait une erreur de manip.

Je repose donc mon problème, voila j'ai un tableau à 3 colonnes qui représente pour les 2 1eres le nombre de bonbons x présents dans chacune des poches gauches et droites d'un enfant, et dans la 3eme colonnes le nombre x de bonbons et s de scoubidous se trouvant dans son cartable. Je ne travaille que sur la 3eme.

Je veux que mon code permette de balayer de ligne en ligne la colonne 3 jusqu'à la 1ere cellule vide pour compter le nombre de bonbons et de scoubidous dans le cartable.

Ma fonction s'appelle compterpoche, mais elle a l air d avoir un souci. Une erreur "variable non définie me reviens.

Surement une erreur de syntaxe, je pense que mon code est bon, je n'ai peut être pas fait au plus simple mais je teste différentes manières et là il fallait que j'utilise Call entre autre.

Je vous joint mon classeur, merci d'avance.

Bonjour,

Tu appelle les variables nbbonbons ou mesbobnbons?

Regarde le fichier

A vérifier

@+

3classeur1.xlsm (15.89 Ko)

Bonjour,

Il y a 2 principes oubliés.

1) L'option Explicit (1ère ligne du code) oblige de déclarer les variables avant de les utiliser. Or dans la fonction les variables NbBonbons et NbScoubidous n'ont pas été déclarées. Si tu le fait, l'erreur disparaît. Pour autant, le résultat ne sera pas correct et le message affichera zéro bonbons zéro scoubidous car il n'y a aucune transmission de valeur des variables locales (NbBonbons, NbScoubidous) aux variables globales (mesbonbons, messcoubidous)

2) Il faudra récupérer les valeurs de variables locales dans les variables globales à la fin de la fonction.

Bien entendu, c'est une manière de faire, il y a beaucoup plus de notions à maîtriser pour bien manipuler les fonctions personnalisées.

Bonjour et merci de vos réponses,

oui je dois déclarer mes variables en nbbonbons et nbscoubidous, elles ne correspondaient pas avec mesbonbons,

j avais juste commencer lors d un précédent TP sur le même tableau mais avec les 2 1eres colonnes à nommer mon nombre de bonbons "mesbonbons" et quand j'ai commencé ce TP avec le cartable j'utilisais nbbonbons, du coup j'ai utilisé les 2 donc rien ne pouvait correspondre, c était pourtant flagrant!

Merci de votre aide

Rechercher des sujets similaires à "1er pas vba"