Corriger un code

Bonjour, j'ai modifié un code que j'ai récupéré sur ce site pour selectionner un numéro de dossier (colonne a) au hasard selon le nom du gestionnaire en colonne Z. Le probleme est que si je rentre le nom d'un gestionnaire qui n'est pas dans la liste, Excel ne fonctionne plus et le logiciel se ferme. Comment pourrai-je résoudre ce probleme? Merci

Private Sub Tirage_Click()

Dim MyValue As Integer

Dim LigneAjout As Long

With Worksheets("Feuil1")

Randomize

MyValue = Int(((.Range("A65536").End(xlUp).Row) - 1) * Rnd) + 1

Do Until CheckBox2.Value = True Or gestionnaire = .Range("Z" & MyValue).Value

MyValue = Int(((.Range("A65536").End(xlUp).Row) - 1) * Rnd) + 1

Loop

Hasard_Nom = .Range("A" & MyValue).Value

End With

MsgBox "Le fichier tiré au sort est le : " & Hasard_Nom

With Worksheets("Feuil2")

LigneAjout = .Range("A" & Rows.Count).End(xlUp).Row + 1

.Range("A" & LigneAjout) = time.Value 'Date

.Range("B" & LigneAjout) = Controleur.Value 'Contrôleur

.Range("D" & LigneAjout) = gestionnaire.Value

.Range("C" & LigneAjout) = Hasard_Nom 'Dossier

End With

UserForm1.Hide

End Sub

Salut,

Si tu nous montrais un bout de fichier, ce serait quand même mieux. J'ai essayé d'en effectuer un rapidement, mais lorsque ça a bloqué sur CheckBox2, j'ai laissé tomber

Cordialement.

Bonjour, je vous ai mis un fichier pour expliquer le probleme.

Merci

Salut,

Dans le fichier ci-joint j'ai ajouté un bout de code à ta macro et ça semble fonctionner. Je ne sais pas si tu désires - après que le message d'erreur ait été affiché - que ton UserForm se ferme ou qu'il reste ouvert comme c'est le cas actuellement.

Private Sub Tirage_Click()
Dim MyValue As Integer
Dim LigneAjout As Long
    With Worksheets("Feuil1")
        Randomize
        MyValue = Int(((.Range("A65536").End(xlUp).Row) - 1) * Rnd) + 1

        'Passage ajouté par Yvouille
        If CheckBox2 = False Then
            If Application.WorksheetFunction.CountIf(Range("Z:Z"), gestionnaire) = 0 Then
                MsgBox "Le gestinnaire indiqué n'est pas présente dans la liste de la colonne Z"
                Exit Sub
            End If
        End If
.......
.......

A te relire.

Merci bcp pour votre aide.

Rechercher des sujets similaires à "corriger code"