VBA---- carré de 10X10

  • Initiateur de la discussion Initiateur de la discussion JJ1
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

J

JJ1

Guest
Bonjour à tous,

J'utilise la fonction Dictionary, sous la forme:

Randomize
Set dico = CreateObject("Scripting.dictionary")
While dico.Count < 10
x = Int((70 * Rnd) + 1)
dico(x) = x
Wend
Range("K10").Resize(, 10) = dico.keys

Je voudrais cette fonction mais remplissant un carré de 10X10 sans doublon en ligne et sans doublon en colonne.
Je pourrais faire 10 lignes de cette fonction en changeant le Range (K10, puis K11...) mais ça n'empêcherait pas d'avoir alors des doublons formés en colonnes.

Comment puis-je faire, pour que le code soit rapide aussi (je l'intégrerai en boucle)

Merci
 

Pièces jointes

Re : VBA---- carré de 10X10

Bonsour®
le seul problème avec ce code c'est que je n'y comprends rien

🙄
alors une solution en formules , sans dictionary, sans macro (ou presque😉)
😎 uniquement pour relancer le calcul au lieu de re-appuyer sur F9 quand il y a doublons-croisés...

nb :2 versions
mais sans garantie pour les MEFC 2003🙁
 

Pièces jointes

  • Carre v4_gd.xlsm
    Carre v4_gd.xlsm
    27.9 KB · Affichages: 42
  • Carre v4_gd.xls
    Carre v4_gd.xls
    74.5 KB · Affichages: 32
  • Capture.jpg
    Capture.jpg
    50.9 KB · Affichages: 42
  • Capture.jpg
    Capture.jpg
    50.9 KB · Affichages: 56
  • Capture.jpg
    Capture.jpg
    50.9 KB · Affichages: 40
Re : VBA---- carré de 10X10

Re
Salut Modeste geedee
Merci vmatthieu (un petit compliment est toujours agréable !!! et là c'est un gros)
Merci mapomme pour le Like
La version précédente avait tout de même un défaut: après avoir placé les 70 1ers nombre grâce a la liste constituée a l'aide du dictionnaire , on reprenait cette même liste (a l'envers ) pour remplir les 30 cases restantes. De fait les 3 dernières ligne du carre avaient un petit air de déjà vu par rapport au premières
Dans cette version on crée une 2eme liste et on contrôle la validité avant d’écrire
A mon avis il est difficile de faire plus aléatoire (mais je le garantirai pas)
 

Pièces jointes

Re : VBA---- carré de 10X10

Bonjour à tous,

Une nouvelle version.

Elle est paramétrable à partir de la feuille (3 paramètres) :
  1. le nombre max de valeurs compris entre 1 et Max (max >=10 et <=100).
  2. Le nombre d'essai max.
  3. Indication si chaque valeur possible doit apparaitre au moins une fois ou non.

Il y a deux méthodes: une pour Max compris entre 11 et 100 et une seconde méthode pour Max=10
 

Pièces jointes

Dernière édition:
Re : VBA---- carré de 10X10

Bonsoir à tous,
Merci Pierre Jean pour ta contribution (excellent code et rapide) et Ma pomme aussi pour le paramétrage utilisateur.
La version de Modeste avec un tableau Alea au dessus marche très bien (Modeste m'avait déjà fait un code semblable sur une ligne de 1 à 50 avec copie si valeur max)

MERCI à tous.
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

A
  • Question Question
Réponses
3
Affichages
595
N
Réponses
5
Affichages
3 K
Nicocotte125
N
J
Réponses
20
Affichages
2 K
V
  • Question Question
Réponses
3
Affichages
888
R
Réponses
6
Affichages
1 K
rocornet
R
J
Réponses
11
Affichages
1 K
M
Réponses
0
Affichages
2 K
MARGAR
M
Retour