Ajouter une valeur à une cellule

Bonjour à toutes et à tous.

Voila je cherche une solution à mon problème (s'il y en a une). Ca m'aiderais GRANDEMENT pour la fac (pour réviser en fait).

J'ai un tableau excel qui me donne aléatoirement une donnée (A,B,C ou D par exemple) mais pondéré à un "score" (c'est a dire si A a un score de 10 et B un score de 2, A aura plus de chance d'apparaitre que B) C'est une fonction "tap" a ce que j'ai compris et c'est grâce au forum que j'ai trouvé ça donc merci ! ♥

Mais voici mon problème : une fois m'avoir donné aléatoirement ma donnée (par exemple il me sort A), je voudrais lui changer son score (par exemple lui ajouter 1 ou alors lui enlever 1 comme j'aurai décidé). Je ne sais pas si c'est clair pour vous.

Est-ce que c'est possible ?

Merci beaucoup pour toute l'aide que vous donnez

10tap.xlsm (17.21 Ko)

Bonjour,

Comment souhaitez vous modifier la valeur (+ ou -), avec deux boutons (Augmenter et Diminuer), automatiquement en l'indiquant dans une cellule ?

BàV

avec 2 boutons ca me semble super

Bonsoir

Essaie cela :

14tap-v1.xlsm (22.34 Ko)

Bonne soirée

Whaaa MERCI beaucoup c'est vraiment fantastique !

Juste une dernière chose est-ce qu'il est possible d'avoir un bouton "reset" qui remette les score à disons 10 ? ?

En tout cas merci pour le travail super rapide

ou alors que le score ne puisse pas descendre en dessous de 10 par exemple est-ce que c'est possible ?

Merci encore

Bonsoir,

Un petit problème à soulever toutefois : la valeur 0 devrait signifier que l'élément n'a aucune probabilité d'apparaître, et effectivement, c'est cas, un élément auquel tu donne la valeur 0 n'apparaîtra plus !

Par contre, une valeur négative n'a pas de sens, car on ne peut appraraître moins que pas du tout, mais elle va fausser le jeu de probabilités pour les autres...

Ainsi, ton g final avec valeur -1, précédé d'un i à 0 (donc éliminé) et d'un h à 1, qui devrait donc avoir autant de probabilité d'apparaître que le f situé plus haut, les perd ! Le g n'apparaîtra certes pas (du moins le dernier car il fait doublon avec un autre !), ni le i, mais équilibrant la valeur de h ôte à ce dernier toute possibilité d'apparaître.

Je ne pense pas que ce type de dérive figurait dans les intentions de départ... Il me semble donc que tu devrais empêcher la possibilité de valeurs négatives qui introduisent un biais dans les probabilités d'autres éléments.

Et d'autre part si tu incrémentes en plus ou en moins un élément apparu, tu n'as aucune chance de pouvoir incrémenter ceux qui n'ont aucune chance d'apparaître !

Cordialement.

merci MFerrand, j'avais vu le problème aussi. C'est pour ca je pense que si on empêche les scores de descendre en dessous de 10 c'est bon et comme ca s'ils sont tous à 10, ils ont autant de chance d’apparaitre ce qui est parfait

Pour empêcher de descendre en dessous de 10, ce qui ne se pose que pour une incrémentation négative, tu peux remplacer simplement le -1 dans la formulation de Patty par : + 1 * (Cells(Lig, 1) > 10)

Si la cellule a la valeur 10, l'expression booléenne (Cells>10) renverra False, soit 0 et l'incrémentation (1*0) se trouvera annulée.

Si la cellule a une valeur supérieure à 10, l'expression booléenne reverra True, soit : 1 * -1, on incrémentera négativement de 1...

[Ne pas oublier que si VRAI renvoie 1 dans Excel, c'est -1 en VBA, c'est pourquoi j'ai inversé le signe du 1 car il sera multiplié par -1 si l'incrémentation est validée.]

Cordialement.

merci mille fois. Je crois que je peux fermer le sujet

super efficace

Bonjour,

est-ce que quelqu'un sait comment avoir un bouton pour remettre tous les 'scores' à 10. J'aimerai quand je clique toutes les cellules du tableau prennent la valeur de 10 mais pas celle qui sont à 0 sinon ça fausserait tout :/

MERCIIII

Bonsoir,

Tu avais dit que 10 était le minimum...

Pour remettre à 10 toutes les valeurs

    Worksheets("Sheet1").Range("A1:A10") = 10

voilà la ligne de code que tu peux utiliser !

Tu peux faire le reste, la placer dans une procédure, à raccorder à un bouton...

Cordialement.

merci pour le code

le problème c'est que comme j'ai un tableau (qui n'est pas tout à fait rempli) j'ai certain scores (minimum 10) mais d'autre ou c'est vide et du coup le score est a 0 (ce qui est normal ca a une probabilité de 0 vu que c'est vide). Si je réinitialise tout à 10, meme les cases vides vont avoir un score de 10..

En fait je voudrais remettre à 10 les scores qui ne sont pas 0. est-ce que c'est possible ?

Tout est possible, mais il faut d'abord que tu te mette d'accord avec les règles que tu appliques, et que tu n'en changes pas à tout bout de champ.

tout marche très bien pour l'instant dans mon tableau.

Pour les lignes qui sont remplies les scores sont a 10 et ne peuvent pas descendre en dessous

pour les lignes vides les scores sont par défaut à 0

après j'arrive à faire bouger les scores grâces au boutons (uniquement les scores qui ont une probabilité d'apparaitre donc pas les 0) mais j'aimerai bien parfois les remettre à 10 (et donc ne pas toucher aux scores qui sont resté à 0). Je sais pas si c'est clair :/

Si les scores à 0 ne bougent jamais, ils n'ont plus besoin d'être là ! Et on ne travaille qu'avec ce qui bouge !

en fait au fur et a mesure je vais remplir mon tableau et donc les scores 0 vont devenir des scores 10 mais tant que c'est vide pas besoin

C'est pas clair, étant donné qu' à 0 ils ne peuvent changer dans le cadre des règles édictées jusqu'ici, comment le pourraient-ils, alors qu'aucune règle ne leur permet la moindre variation !!!

je joins le fichier pour que ca soit plus clair

4tap-v1-1.xlsm (22.89 Ko)

Si tu mets des formules, ça change tout et plus rien ne va plus.

Si tu maintiens des doublons dans les lettres, tu biaises les mécanismes que tu as mis en place : quand le 2e est tiré, tu modifieras la valeur du 1er...

Il convient donc que tu enlèves les formules, élimines les anomalies, définisse des règles de fonctionnement cohérentes et complètes (tout ce qu'elles ne prévoient pas n'existe pas !)

et on pourra reprendre la discussion...

Bonne nuit !

Rechercher des sujets similaires à "ajouter valeur"