Page d'idendification

cs_Marathon Man Messages postés 71 Date d'inscription lundi 24 juillet 2006 Statut Membre Dernière intervention 6 septembre 2006 - 1 sept. 2006 à 19:05
cs_Marathon Man Messages postés 71 Date d'inscription lundi 24 juillet 2006 Statut Membre Dernière intervention 6 septembre 2006 - 1 sept. 2006 à 22:57
Bonjour à tous,

Je voudrais éxécuter une feuille d'identification automatiquement à l'ouverture d'un classeur.
On peut imaginer deux champs avec le nom et le prénom et s' ils ne correspondent pas
à une liste alors il y a un message et l'écran reste sur la feuille.

Si vous aviez des astuces cela serait super

merci d'avance et bon week-end

11 réponses

mortalino Messages postés 6786 Date d'inscription vendredi 16 décembre 2005 Statut Membre Dernière intervention 21 décembre 2011 18
1 sept. 2006 à 19:28
Salut Marathon Man,

essaie ça :
<small>
Coloration syntaxique automatique </small>
' *** dans le module ThisWorkBook :
Private Sub ThisWorkBook_Open() 
    UserForm1.Show 
End Sub 

' *** insère un UserForm (UserForm1):
' met lui 2 textbox : (TextBox1 pour le nom, TextBox2 pour le prénom)
' met lui 2 boutons : (CommandButton1 pour valider, CommandButton2 pour annuler)
Private Sub CommandButton1_Click() 
    If TextBox1.Text = "Man" And TextBox2.Text = "Marathon" Then 
        MsgBox "Identification connue": Sheets(2).Select 
    ElseIf TextBox1.Text = "Mortalino" And TextBox2.Text = "" Then 
        MsgBox "Cette fois ci je ne t'aiderai pas pendant 11h": Sheets(3).Select 
    Else 
        MsgBox "Perdu, mauvaise identification": ThisWorkBook.Close False 
    End If 
End Sub 

Private Sub CommandButton2_Click() 
    MsgBox "Vous avez annulé, ce fichier va se fermer": ThisWorkBook.Close False 
End Sub

<small>
Coloration syntaxique automatique </small>

@++

<hr size="2" width="100%" />
  --Mortalino--
Le mystérieux chevalier, "Provençal, le Gaulois"
<!--
0
cs_Marathon Man Messages postés 71 Date d'inscription lundi 24 juillet 2006 Statut Membre Dernière intervention 6 septembre 2006
1 sept. 2006 à 19:47
salut Mortalino,

Grace à vous tous la présentation de mon projet à été un succés. Présentation de la version finale le 11 septembre. je vais essayé merci

Super forum
0
cs_Marathon Man Messages postés 71 Date d'inscription lundi 24 juillet 2006 Statut Membre Dernière intervention 6 septembre 2006
1 sept. 2006 à 20:04
Je suis bien d'accord pas pendant 11 heures

j'ai oublié de te dire que je voudrais comparer la case remplie à une liste de nom
est-ce que je peux le faire avec ce code

Merci
0
cs_Marathon Man Messages postés 71 Date d'inscription lundi 24 juillet 2006 Statut Membre Dernière intervention 6 septembre 2006
1 sept. 2006 à 20:18
Je ne pense pas àvoir fait une erreur mais l'UserForm ne s'affiche pas
et il est bien créé

tu as une idée ?

voilà le code que j'ai mis

Private Sub ThisWorkBook_Open()
    UserForm1.Show
   
  End Sub
 
    Private Sub CommandButton1_Click()    If TextBox1.Text "Man" And TextBox2.Text "Marathon" Then
        MsgBox "Identification connue": Sheets(2).Select    ElseIf TextBox1.Text "Mortalino" And TextBox2.Text "" Then
        MsgBox "Cette fois ci je ne t'aiderai pas pendant 11h": Sheets(3).Select
    Else
        MsgBox "Perdu, mauvaise identification": ThisWorkbook.Close False
    End If
End Sub


Private Sub CommandButton2_Click()
    MsgBox "Vous avez annulé, ce fichier va se fermer": ThisWorkbook.Close False
0

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

Posez votre question
mortalino Messages postés 6786 Date d'inscription vendredi 16 décembre 2005 Statut Membre Dernière intervention 21 décembre 2011 18
1 sept. 2006 à 20:18
Oui, l'idéal serait de placer ta liste dans une feuille de ton classeur :

Par exemple tu la nommes "ListID"
Place dans les cellules :
A1 : Nom
B1 : Prénom
A2:Ax : autant de noms que tu souhaites.
B2:Bx : autant de prénoms que tu souhaites.

<small>
Coloration syntaxique automatique </small>
' *** dans le module ThisWorkBook :
Private Sub ThisWorkBook_Open()  
    UserForm1.Show  
End Sub  

' *** insère un UserForm (UserForm1):
' met lui 2 textbox : (TextBox1 pour le nom, TextBox2 pour le prénom)
' met lui 2 boutons : (CommandButton1 pour valider, CommandButton2 pour annuler)
Private Sub CommandButton1_Click()  
    Dim i As Long, DerLine As Long 

DerLine = Sheets("ListID").Columns(1).Find("", [A1], , , xlByRows, xlNext).Row - 1 

  For i = 2 To DerLine 
    If TextBox1.Text = Cells(i, 1).Value And TextBox2.Text = Cells(i, 2).Value Then  
        MsgBox "Identification connue": Sheets(2).Select: Exit Sub 
    End If  
  Next i 

MsgBox "Mauvaise identification", vbCritical: TextBox1.SetFocus 
End Sub  

Private Sub CommandButton2_Click()  
    MsgBox "Vous avez annulé, ce fichier va se fermer": ThisWorkBook.Close False  
End Sub 
<small>
Coloration syntaxique automatique </small>

<small></small> @++

<hr size="2" width="100%" />
  --Mortalino--
Le mystérieux chevalier, "Provençal, le Gaulois"
<!--
0
mortalino Messages postés 6786 Date d'inscription vendredi 16 décembre 2005 Statut Membre Dernière intervention 21 décembre 2011 18
1 sept. 2006 à 20:24
Il faut absolument que l'objet précédant .Show soit indiqué par son nom.
Par exemple, quand tu insères un UserForm dans un nouveau Projet, il s'appelle UserForm1.
Tu peux le renommer, par exemple en frmPatiente.
Du coup, l'instruction devient :
frmPatiente.Show

@++

<hr size="2" width="100%" />
  --Mortalino--
Le mystérieux chevalier, "Provençal, le Gaulois"
<!--
0
cs_Marathon Man Messages postés 71 Date d'inscription lundi 24 juillet 2006 Statut Membre Dernière intervention 6 septembre 2006
1 sept. 2006 à 20:49
Pour confirmation, je mets le code suivant dant le code de l'userform ?

a+

Private Sub CommandButton1_Click()  
    Dim i As Long, DerLine As Long 

DerLine = Sheets("ListID").Columns(1).Find("", [A1], , , xlByRows, xlNext).Row - 1 

  For i = 2 To DerLine 
    If TextBox1.Text = Cells(i, 1).Value And TextBox2.Text = Cells(i, 2).Value Then  
        MsgBox "Identification connue": Sheets(2).Select: Exit Sub 
    End If  
  Next i 

MsgBox "Mauvaise identification", vbCritical: TextBox1.SetFocus 
End Sub  

Private Sub CommandButton2_Click()  
    MsgBox "Vous avez annulé, ce fichier va se fermer": ThisWorkBook.Close False  
End Sub 
0
mortalino Messages postés 6786 Date d'inscription vendredi 16 décembre 2005 Statut Membre Dernière intervention 21 décembre 2011 18
1 sept. 2006 à 20:51
Oui, sachant qu'il faut sur ton UserForm les 2 boutons, les 2 textbox, et que tu aies créé la feuille ListID

@++

<hr size="2" width="100%" />
  --Mortalino--
Le mystérieux chevalier, "Provençal, le Gaulois"
<!--
0
cs_Marathon Man Messages postés 71 Date d'inscription lundi 24 juillet 2006 Statut Membre Dernière intervention 6 septembre 2006
1 sept. 2006 à 21:04
J'ai changé de classeur car j'avais un soucis avec.
De plus je mets du temps car j'essaye de comprendre et non de copier bêtement

La liste est crée

dans A2 j'ai VELO
dans B2 j'ai VELO

lorsque que l'userform s'affiche je mets VELO et VELO et il me dit mauvaise identification

Je ne vois pas pourquoi ?
A+
0
mortalino Messages postés 6786 Date d'inscription vendredi 16 décembre 2005 Statut Membre Dernière intervention 21 décembre 2011 18
1 sept. 2006 à 21:54
Parce que j'ai merder dans le code :

Private Sub CommandButton1_Click()
Dim i As Long, DerLine As Long

DerLine = Sheets("ListID").Columns(1).Find("", [A1], , , xlByRows, xlNext).Row - 1

For i = 2 To DerLine
If TextBox1.Text = Sheets("ListID").Cells(i, 1).Value And _
TextBox2.Text = Sheets("ListID").Cells(i, 2).Value Then
MsgBox "Identification connue": Sheets(2).Select: Exit Sub
End If
Next i

MsgBox "Mauvaise identification", vbCritical: TextBox1.SetFocus
End Sub

Private Sub CommandButton2_Click()
MsgBox "Vous avez annulé, ce fichier va se fermer": ThisWorkBook.Close False
End Sub

Avant les Cells(i, j), j'aivais oublié 'Sheets("ListID").'
^^ les code là est bon.

++
0
cs_Marathon Man Messages postés 71 Date d'inscription lundi 24 juillet 2006 Statut Membre Dernière intervention 6 septembre 2006
1 sept. 2006 à 22:57
le test que j'ai fait ne fonctionne pas.
pas d'erreur mais et toujours mauvaises identification

a+
0
Rejoignez-nous