Programmation VBA Excel 16 FR

Bonjour à tous,

Je souhaiterai créer une programmation qui peux faire la liste suivante.

a- Elle dois s'enclencher avec le bouton "démarrer"
b- Elle dois prendre en compte le chiffre N dans la cellule A1.
c- Elle dois me permettre suivant la valeur du chiffre N de cliquer sur des cellules aléatoirement du même nombre avant d'arrêter la macro.
d- Dans chaque cellule sélectionnée, il doit me marquer un chiffre aléatoire entre 1 et N sans mettre le même a chaque fois afin de pouvoir créer la suite.
e- Si je clique sur une cellule avec un chiffre compris dans l'intervalle de sa séquence, il dois le prendre en compte afin de ne pas reécrire ce chiffre dans une autre cellule selectionnée
f- le boute effacer dois vider la cellule A1

Comme exemple: J'écris le chiffre 8 dans la cellule A1, je clique sur le bouton démarrer et après ça je clique sur n'importe quelle cellule aléatoirement et il doit me marquer un chiffre aléatoire entre 1 et 8 jusqu'a avoir cliqué sur la huitième cellule puis la macro s'arrète. J'efface et si je marque ensuite un 5, il doit refaire pareil jusqu'au 5 eme clique et si je clique sur un chiffre précédemment marqué avec la séquence du 8, si le chiffre et compris dans son intervalle 1 et 5 il le prend en compte et ne dois plus utiliser ce chiffre aléatoirement.

Je joint le fichier avec mon code et 2 boutons de créés. Mes boutons fonctionnent puisque si je rentre un chiffre dans la cellule A1, le bouton Effacer l'efface. Et si je marque rien, le bouton démarrer me met une erreur en disant qu'il faut un chiffre minimum équivalent à 1. Mais si je clique sur une cellule aucun chiffre ne s'écris.

Merci de m'avoir lu et essayer de m'aider

Cordialement

Lionel

8classeur1.xlsm (20.00 Ko)

Bonjour,

Essayez ceci:

Cdlt

Bonjour et merci pour ce retour,

Quand je le lance, j'ai mis un 8 dans la cellule A1 et après démarrer ca m'a bien fait une séquence de 8 chiffres sur 8 cases mais il y avais des doublons alors qu'il me faut uniquement la suite aléatoirement jusqu'a 8

Après j'ai mis un 10 par contre ca ne fonctionner pas avec. Et je n'ai pas pu tester si on clique sur une cellule avec un chiffre de la séquence précédente est ce que ca prendre le chiffre en compte pour ne pas le re-écrire dans la séquence en cours pour avoir un identique entre les 2.

J'ai fait un nouveau code sans bouton ou mes deux séquence marche mais je n'arrive pas à avoir un chiffre similaire entre deux séquence.

Merci pour l'aide c'est top

Cordialement

Lionel

9test.xlsm (16.09 Ko)

Bon, j'ai zappé une partie de votre demande initiale concernant l'évitement des doublons. Je vais corrigé cela.

Mais auparavant, j'ai besoin de quelques précisions: en voyant votre second fichier, je me pose les questions suivantes:

-Les cellules que vous cliquez font-elles partie de la même colonne?

-Les résultats (liés aux cellules que vous sélectionnez) sont-ils systématiquement les uns à la suite des autres? si c'est le cas, il est inutile de sélectionner une à une chaque cellule, il suffirait de cliquer sur la première cellule de destination, est la macro appliquerait une suite de chiffres aléatoires sur les cellules en dessous.

En attente de votre réponse.

Merci de me repondre.

En fait je veux pourvoir cliquer sur n’importe qu’elle cellule.

Sur le deuxieme fichier je les ai mis les uns apres les autres pour tester si ca fonctionne mais je ne veux pas faire simplement des colonnes ou lignes. Je veux pouvoir afficher moi meme un chiffres d’une serie a l’endroit qu’il me faut

Cordialement

Lionel

Bonjour,

Regardez si ceci vous convient:

Cdlt

Bonjour,

Merci pour ce retour, lorsque je fait une première série style un 8 nickel au top, par contre si derrière je veux faire un 10 par exemple je change dans la A1 et je fait démarrer et quand je clique ca ne marche pas.

Vous prenez en compte aussi le fait que si l'on croise une même cellule sur deux séries, qu'il prenne sur la deuxieme série en compte le chiffre déjà marqué pour ne pas le remarquer et le prendre comme tel ?

Cordialement

Lionel

Ce que j'ai fait, en reprenant votre démo:

je saisi 8 en A1, je clique dans 8 cellules différentes et j'obtiens bien mes 8 valeurs.

ensuite je saisi 10 d en A1 or, comme je n'ai pas effacer les précédentes valeurs, il ne reste plus que 2 valeurs à saisir sinon, il faudrait effacer A1 avant d'y mettre la valeur 10 afin d'obtenir les 10 nouvelles valeurs.

N'est ce pas ce que vous souhaitez?

Ok j'ai compris.

Moi je pensai plus a faire des séries les unes après les autres. La première série toujours comme exemple le 8 est inscrite un peu aléatoirement sur la grille excel, ensuite on met un 10 et on "éparpille" aussi dans la même grille. Au bout d'un moment forcément on va remplir la feuille excel (mais ce n'est pas ce que je veux faire). Par contre si pendant que je tire la série de 10 aléatoirement sur la grille excel et que je clique sur un chiffre précédemment posé de la série de 8, eh bien il faut qu'il prenne en compte le chiffre afin de ne pas l'écrire dans la série de 10 ainsi les deux séries auront ce chiffre en commun. Le seul truc c'est a moi de cliquer sur un chiffre qui n'est pas encore sortie dans la série de 10 aussinon il y en aura deux identiques dans ce cas.

Merci, ca a l'air un peu fou mais pour ce que je veux en faire il me faut cette façon.

Encore merci pour l'aide au top

Lionel

Ca me parait bien compliqué, combien de tirages en cascade maximum pouvez-vous faire(c'est à dire par exemple; 1er tirage, on demande 8, puis 2ème tirage, on demande 10, etc)? je vous demande cela, parce que, je verrais bien une solution qui affecterait une couleur différente pour chaque série de tirage, car le problème est que pour chaque série, il ne doit pas y avoir de doublons, alors qu'il y en aura forcément entre chaque série de tirages, et je ne vois pas (pour l'instant) comment différencier les différents tirages afin que l'on puisse accepter ou pas, les doublons.


En fait je voyais plutôt que lorsqu'on lance une deuxième série. Il apparait le 3, 8, 2 et au quatrième on clic sur un chiffre existant style le 5, simplement la série en cours n'écrira pas de 5 dans sa suite pour finir le nombre de chiffre que l'on défini dans la cellule A1.

Et même si on est à la 6 eme série, si on clique sur un chiffre (de n'importe quelle série il soit) alors simplement ca le prend en compte juste pour la série en cours d'exécution, est ce même si on clique sur 2 ou 3 chiffre existants.

Il suffit juste pour ma part de cliquer sur un chiffre qui n'est pas encore sortie dans la série en cours

Merci

Lionel

bonjour arturo84, lionelP

une proposition avec en décimal la série actuelle, (donc maintenant max 9 séries, 99 est aussi possible)

Plus tard, on change le format qu'on ne voit que les integers.

Je ne comprenais pas quoi faire si la cellule est déjà occupée.

bonjour à tous,

une proposition, (si j'ai bien compris !)

13classeur1-39.xlsm (21.90 Ko)

edit : hallo Bsalv, collision !

VOUS ETES TOUS AU TOP !!!!!

MERCI ARTURO83

MERCI BSALV

MERCI H2SO4

Avec toute la discussion que l'on a eu, vous êtes arrivé à ce que je voulais. h2so4 c'est pile ce que je voulais

Rechercher des sujets similaires à "programmation vba"