Recopie de cellules vers d'autres mais aléatoirement

Résolu/Fermé
marcusse22 Messages postés 5 Date d'inscription jeudi 5 février 2015 Statut Membre Dernière intervention 6 février 2015 - 5 févr. 2015 à 17:36
ccm81 Messages postés 10862 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 30 mai 2024 - 6 févr. 2015 à 20:55
Bonjour,

pour organiser des tournois de cartes se jouant a 4.

je souhaite inscrire plusieurs pseudos dans une colonne.
je sélectionne les cellules
je clique sur un bouton "tri" et les pseudos s inscrivent de façon aléatoire par table


Pseudo 1 Table1
Pseudo 2 Pseudo 1 Pseudo 8
Pseudo 3 Pseudo 4 Pseudo 7
Pseudo 4 Tri
Pseudo 5 Table 2
Pseudo 6 Pseudo 2 Pseudo 6
Pseudo 7 Pseudo 3 Pseudo 5
Pseudo 8

Si quelqu un peut m aider, je serais super content !!! merci


A voir également:

9 réponses

ccm81 Messages postés 10862 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 30 mai 2024 2 409
5 févr. 2015 à 18:31
Bonjour

On peut s'en tirer sans macro
https://www.cjoint.com/?3BfsPpeJ8r0

Cdlmnt
0
marcusse22 Messages postés 5 Date d'inscription jeudi 5 février 2015 Statut Membre Dernière intervention 6 février 2015
6 févr. 2015 à 11:32
oui merci c est exactement le principe que je souhaite mais le probleme est que je ne sais comment faire fonctionner ce tableau.
je n ai pas besoin de la colonne aleas ni rangs et si je les supprime il y aurait erreur.

comment faire pour que le deploiement se fasse ? je suis sur exel 2010.
merci
0
ccm81 Messages postés 10862 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 30 mai 2024 2 409
Modifié par ccm81 le 6/02/2015 à 14:01
Les colonnes aleas et rangs ne doivent pas être supprimée mais peuvent être tout simplement masquées
Pour faire fonctionner ce tableau
1. Tu entres la liste des noms en colonne A
2. J'ai arrêté les formules (colonnes B et C) à la ligne 41, donc
Si tu as plus de 40 noms, tu tires ces formules vers le bas. Le nombre de tables sera alors plus grand que 10 donc tu tires les formules de la plage Q1:Q6 vers la droite
3. Tu choisis oui en E2 pour un nouveau tirage, s'il ne te plait pas F9 pour un nouveau et quand il te convient tu choisis non en E2 pour bloquer ce tirage

Il ne devrait pas y avoir de problème sous Excel 2010
Ne pas oublier de faire ça
1. plages à nommer
listejoueurs=DECALER(Feuil1!$A$1;1;0;NBVAL(Feuil1!$A:$A)-1;1)
listealeas=DECALER(Feuil1!$A$1;1;1;NBVAL(Feuil1!$A:$A)-1;1)
listerangs=DECALER(Feuil1!$A$1;1;2;NBVAL(Feuil1!$A:$A)-1;1)
2. Outils/option/Calcul
cocher itération et mettre 1 comme nombre maxi d'itérations

Cdlmnt
0
marcusse22 Messages postés 5 Date d'inscription jeudi 5 février 2015 Statut Membre Dernière intervention 6 février 2015
6 févr. 2015 à 14:13
oui ca y est ca fonctionne exactement comme je voulais.
merci bcp
donc j ai masque les 2 colonnes et en fait j ai fait F9..
c est tout
et ca marche !!

merci en encore

j ose te demander une derniere chose : est il possible de remplacer F9 par une case a cliquer car j envisage de creer une appli apk pour tablette et je ne crois pas que F9 fonctionnerait...
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
ccm81 Messages postés 10862 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 30 mai 2024 2 409
6 févr. 2015 à 15:22
On peut lancer un recalcul avec un double ckic par exemple sur la cellule "nouveau". Le code à mettre dans le module de la feuille

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Not Intersect(Target, Range("E1")) Is Nothing Then
If Range("E2").Value = "oui" Then
Range("A1").Select
Application.Calculate
End If
End If
End Sub

On peut aussi attacher ce code à un bouton : if Range("E2") .... end if (si tu fais ça, choisis un bouton dans la boite à outils contrôles)

Bon tournoi
0
marcusse22 Messages postés 5 Date d'inscription jeudi 5 février 2015 Statut Membre Dernière intervention 6 février 2015
6 févr. 2015 à 19:00
merci pour ta reponse mais non je n y arrive pas :

je suis alle dans developpeur / inserer / controle active x /
j obtiens un bouton de commande (command button1)
qd je double clic dessus s ouvre alors une fenetre vb et je colle entre les 2 lignes presentes les commandes que tu m as donnees :

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Not Intersect(Target, Range("E1")) Is Nothing Then
If Range("E2").Value = "oui" Then
Range("A1").Select
Application.Calculate
End If
End If
End Sub

Mais qd je retourne dans la feuille exel, qd je double clique sur mon bouton je reviens aux lignes de code mais je n ai pas l equivalent de F9


merci
0
ccm81 Messages postés 10862 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 30 mai 2024 2 409
6 févr. 2015 à 19:55
Pas tout à fait ça
Le code du bouton (que j'ai nommé btNouveau - pour le faire : clic-droit sur le bouton/propriétés/Name)

Private Sub btNouveau_Click()
If Range("E2").Value = "oui" Then
Range("A1").Select
Application.Calculate
End If
End Sub


Je te joins le fichier complet
https://www.cjoint.com/?3BgudicKE21
où tu peux lancer un nouveau tirage soit
- avec le bouton (code ci dessus)
- soit avec un double-clic sur la cellule E1 (Sub Worksheet_BeforeDoubleClick)

Bonne soirée
0
marcusse22 Messages postés 5 Date d'inscription jeudi 5 février 2015 Statut Membre Dernière intervention 6 février 2015
6 févr. 2015 à 20:28
merci beaucoup c est super sympa !!!
0
ccm81 Messages postés 10862 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 30 mai 2024 2 409
6 févr. 2015 à 20:55
De rien

Si c'est fini, merci de mettre le sujet à Résolu (en haut à droite de ton premier message)

Bonne soirée
0