Bonjour à tous,
Je souhaiterais optimiser la saisie des congés via un futur userform.
Pour cela, je dispose d'une macro.
Quand je l'active, elle me demande le nom d'un agent (ex : AA) via une message box.
1. Lorsque l'onglet existe, la macro m'envoie directement sur l'onglet demandé (=ça, ça fonctionne)
2. Si l'onglet n'existe pas, la macro fait apparaitre une message box me disant que le nom saisi n'existe pas. (=ça, ça fonctionne)
MAIS, ce que je voudrais faire, c'est qu'après avoir eu ce message d'erreur de saisie, la macro reparte au début et me redemande le nom de l'agent et ainsi de suite jusqu'à avoir un agent qui existe
(oui, on ne sait jamais, il peut y avoir des erreurs de saisie car certains agents ont des noms compliqués)
Savez-vous comment faire ?
Voilà mon code actuel : (+ doc excel en PJ)
Sub lancer_userform()
Dim resultat As String 'définition de la variable
resultat = InputBox("Indiquer nom agent") 'Boite pour saisir le nom de l'agent
On Error GoTo ErrNom 'si erreur recherche, alors ira à ErrNom
If resultat <> "" Then 'Si la valeur est différente de "" , alors on fait ce qui suit :
Sheets(resultat).Select 'affiche la feuille du nom saisi
Dim last_ligne As Long
last_ligne = ActiveSheet.Cells(6, 1).End(xlDown).Row ' calcul du numéro de la dernière ligne utilisée dans la colonne A (soit la 1ere), 6e ligne
Cells(last_ligne + 1, 1).Activate '+ 1 pr se placer en dessous (se place sous la dernière ligne calculée, colonne A)
End If
Exit Sub
ErrNom:
MsgBox ("Le nom saisi n'existe pas")
End Sub
Merci d'avance pour votre aide