Erreur dans cette formule, je ne trouve pas la solution

bellenm

XLDnaute Impliqué
Bonjour à tous,

J'ai eu beau chercher sur le forum, je ne trouve pas la solution, pourriez-vous m'aider svp, merciii.

J'ai essayer de modifier l'emplacement d'un fichier de "camarchepas" le débogueur indique une erreur dans la ligne du fichier!?
Code:
Sub Tirage2()
'
' formule de camemarchepas
'
Dim Sort As Long, Personne As Long, Nombre As Long, Tourne As Long, Vue As Long
Dim Dictio As Object

Personne = TIRAGELISTING.Range("N" & Rows.Count).End(xlUp).Row
' au depart à la place de TIAGELISTING il y avait Feuil1 car ce code était sur "Feuil1" dans le classeur
Nombre = InputBox("Combien de personnes à trouver")
If Nombre > Personne Then MsgBox " Impossible, pas assez de personnes disponibles": Exit Sub

Set Dictio = CreateObject("Scripting.Dictionary")
For Tourne = 1 To Nombre
 Do
 Sort = Int(Rnd(Timer) * Personne) + 1
    Dictio(Range("N" & Sort).Value) = ""
    Vue = Dictio.Count
 Loop Until Dictio.Count = Tourne
Next Tourne
  Range("O2").Resize(Dictio.Count, 1) = Application.Transpose(Dictio.keys)
End Sub

J'ai beau chercher mais ne vois pas l'erreur donc pas non plus la solution.

Si vous trouver la solution, peut on avec ce code faire de même la sélection suivante "N16:N21" sur la même feuille

Voici en FJ

Merci d'avance

Marc
 

Pièces jointes

  • tournoi2.xlsm
    292.8 KB · Affichages: 21

vgendron

XLDnaute Barbatruc
Re : Erreur dans cette formule, je ne trouve pas la solution

Hello

ca ne marche pas parce que TIRAGELISTING est inconnu du code
Code:
Personne = TIRAGELISTING.Range("N" & Rows.Count).End(xlUp).Row

comme il s'agit du nom de ta feuille, la syntaxe est
Code:
Personne = Sheets("TIRAGELISTING").Range("N" & Rows.Count).End(xlUp).Row
 

bellenm

XLDnaute Impliqué
Re : Erreur dans cette formule, je ne trouve pas la solution

Bonjour vgendron,

il doit y avoir une autre erreur sur le code car après avoir lancer la macro , excell ne répond plus !

Merci déjà d'avoir trouver car sur le fichier d'origine la feuille se prénommait "Feuil1"

Marc
 

bellenm

XLDnaute Impliqué
Re : Erreur dans cette formule, je ne trouve pas la solution

Re bonjour,

Oui car j'ai du fractionner le fichier donc certaine macro son associer sur d'autre feuille que je n'ai pas insérer car le fichier trop gros!

J'ai réussi à faire aller la macro MAIS cela ne coïncide pas si tu as ouvert le fichier tu as vus ce que je cherchais à faire.

Code:
Personne = Sheets("TIRAGELISTING").Range("N" & Rows.Count).End(xlUp).Row
' comment déliniter la longueur de recherche à "N2:N13" Mieux encore que la recherche ne vas pas au delà d'une cellule vide.
Nombre = InputBox("Combien de personnes à trouver")
If Nombre > Personne Then MsgBox " Impossible, pas assez de personnes disponibles": Exit Sub
Vois tu comment faire la modification?

Marc
 
Dernière modification par un modérateur:

vgendron

XLDnaute Barbatruc
Re : Erreur dans cette formule, je ne trouve pas la solution

Hello

en fait, je ne comprend pas grand chose à ton fichier..

dans ta macro Tirage2, qu'est elle censée faire?

cette boucle semble interminable..
Code:
 Do
        Sort = Int(Rnd(Timer) * Personne) + 1
        Dictio(Range("N" & Sort).Value) = ""
        Vue = Dictio.Count
 Loop Until Dictio.Count = Tourne
 

bellenm

XLDnaute Impliqué
Re : Erreur dans cette formule, je ne trouve pas la solution

Cette macro devrais servir à trier aléatoirement si possible les cellule "N2:N13" et les mettre en "O2:O13"

et avec une autre macro tirage fin faire la même chose sur les cellules "N16:N21"

Mais avec la formule ALEA() je n'arrive à rien. J'ai essayer d'autre formules mais rien!

Marc
 

vgendron

XLDnaute Barbatruc
Re : Erreur dans cette formule, je ne trouve pas la solution

je me suis permis d'épurer tes macro
j'ai viré tous les scroll down que l'enregistreur t'a mis partout
ainsi que de nombreux select inutiles.


(pour la macro module 45: j'y suis allé un peu fort
il faudrait juste que tu dises quelles cellules tu prends en référence, pour les copier. et ou..
je présume que tes onglets TF... tu mets des 1 partout dans la colonne D..?
 

Pièces jointes

  • tournoi2.xlsm
    356.6 KB · Affichages: 17

bellenm

XLDnaute Impliqué
Re : Erreur dans cette formule, je ne trouve pas la solution

Je ne trouve pas le module 45 , je ne vois pas comment l'atteindre!

Oui pour les onglets TF c'est bien la colonne "D" mais comme il y a des groupes différent de cellules "D" c'était plus simple pour moi.

Si tu trouve mieux pour les onglets TF et les cellules en blanc, le 1 permet de mettre au départ le classement logique sans résultats.


si non cela à l'air bien.

Ne préférerais tu pas travailler sur le fichier entier? Alors j'essaye de le ziper

Marc
 

bellenm

XLDnaute Impliqué
Re : Erreur dans cette formule, je ne trouve pas la solution

je n'y arrive pas il n'y a rien ou bien je ne suit pas au bon endroit!
Clic droit sur un onglet, visualiser le code et a gauche chercher module 4 mais rien vide.

Le fichier fait 448 ko donc trop gros a envoyer, comment faire

Marc
 

Discussions similaires