Bonjour,
Le code suivant fourni par JB me permet de faire exactement ce qu e je
souhaite, à savoir : rechercher dans une "base" la valeur de la TextBox1
et recopier les données des différentes TextBox dans les cellules de droite.
Private Sub B_ok_Click()
Application.ScreenUpdating = False
Set x = [Feuil1].[A:A].Find(what:=Me.TextBox1, lookat:=xlWhole)
y = Me.TextBox1.Value
If Not x Is Nothing Then
For i = 2 To 5
If IsNumeric(Me("textbox" & i)) Then
Cells(x.Row, i + 2) = CDbl(Me("textbox" & i))
Else
Cells(x.Row, i + 2) = Me("textbox" & i)
End If
Me("textbox" & i) = ""
Next i
Me.TextBox1 = ""
Else
MsgBox "L'animal dont le numéro de tatouage est " & y & vbNewLine
& " n'existe pas dans l'élevage."
End If
Me.TextBox1.SetFocus
End Sub
Je voudrais savoir le plus tôt possible (dès la validation de la
TextBox1) si l'animal est présent dans la base. Or dans la Macro, il
faut attendre la validation finale, c'est à dire après la saisie dans
les TextBox.
J'ai essayé un certain nombre de choses dont "Is x is nothing", je n'y
arrive pas.
Si quelqu'un peut me donner un petit coup de main, merci d'avance.
Julie.
Bonjour,
Le code suivant fourni par JB me permet de faire exactement ce qu e je
souhaite, à savoir : rechercher dans une "base" la valeur de la TextBox1
et recopier les données des différentes TextBox dans les cellules de droite.
Private Sub B_ok_Click()
Application.ScreenUpdating = False
Set x = [Feuil1].[A:A].Find(what:=Me.TextBox1, lookat:=xlWhole)
y = Me.TextBox1.Value
If Not x Is Nothing Then
For i = 2 To 5
If IsNumeric(Me("textbox" & i)) Then
Cells(x.Row, i + 2) = CDbl(Me("textbox" & i))
Else
Cells(x.Row, i + 2) = Me("textbox" & i)
End If
Me("textbox" & i) = ""
Next i
Me.TextBox1 = ""
Else
MsgBox "L'animal dont le numéro de tatouage est " & y & vbNewLine
& " n'existe pas dans l'élevage."
End If
Me.TextBox1.SetFocus
End Sub
Je voudrais savoir le plus tôt possible (dès la validation de la
TextBox1) si l'animal est présent dans la base. Or dans la Macro, il
faut attendre la validation finale, c'est à dire après la saisie dans
les TextBox.
J'ai essayé un certain nombre de choses dont "Is x is nothing", je n'y
arrive pas.
Si quelqu'un peut me donner un petit coup de main, merci d'avance.
Julie.
Bonjour,
Le code suivant fourni par JB me permet de faire exactement ce qu e je
souhaite, à savoir : rechercher dans une "base" la valeur de la TextBox1
et recopier les données des différentes TextBox dans les cellules de droite.
Private Sub B_ok_Click()
Application.ScreenUpdating = False
Set x = [Feuil1].[A:A].Find(what:=Me.TextBox1, lookat:=xlWhole)
y = Me.TextBox1.Value
If Not x Is Nothing Then
For i = 2 To 5
If IsNumeric(Me("textbox" & i)) Then
Cells(x.Row, i + 2) = CDbl(Me("textbox" & i))
Else
Cells(x.Row, i + 2) = Me("textbox" & i)
End If
Me("textbox" & i) = ""
Next i
Me.TextBox1 = ""
Else
MsgBox "L'animal dont le numéro de tatouage est " & y & vbNewLine
& " n'existe pas dans l'élevage."
End If
Me.TextBox1.SetFocus
End Sub
Je voudrais savoir le plus tôt possible (dès la validation de la
TextBox1) si l'animal est présent dans la base. Or dans la Macro, il
faut attendre la validation finale, c'est à dire après la saisie dans
les TextBox.
J'ai essayé un certain nombre de choses dont "Is x is nothing", je n'y
arrive pas.
Si quelqu'un peut me donner un petit coup de main, merci d'avance.
Julie.
Bonjour,
Private Sub TextBox1_BeforeUpdate(ByVal Cancel As
MSForms.ReturnBoolean)
Set x = [A:A].Find(what:=Me.TextBox1, lookat:=xlWhole)
If x Is Nothing Then
MsgBox "inconnu"
Cancel = True
End If
End Sub
http://cjoint.com/?gmnCdBXWKZ
JB
On 12 juin, 13:12, JulieH wrote:Bonjour,
Le code suivant fourni par JB me permet de faire exactement ce que je
souhaite, à savoir : rechercher dans une "base" la valeur de la TextBox1
et recopier les données des différentes TextBox dans les cellules de droite.
Private Sub B_ok_Click()
Application.ScreenUpdating = False
Set x = [Feuil1].[A:A].Find(what:=Me.TextBox1, lookat:=xlWhole)
y = Me.TextBox1.Value
If Not x Is Nothing Then
For i = 2 To 5
If IsNumeric(Me("textbox" & i)) Then
Cells(x.Row, i + 2) = CDbl(Me("textbox" & i))
Else
Cells(x.Row, i + 2) = Me("textbox" & i)
End If
Me("textbox" & i) = ""
Next i
Me.TextBox1 = ""
Else
MsgBox "L'animal dont le numéro de tatouage est " & y & vbNewLine
& " n'existe pas dans l'élevage."
End If
Me.TextBox1.SetFocus
End Sub
Je voudrais savoir le plus tôt possible (dès la validation de la
TextBox1) si l'animal est présent dans la base. Or dans la Macro, il
faut attendre la validation finale, c'est à dire après la saisie dans
les TextBox.
J'ai essayé un certain nombre de choses dont "Is x is nothing", je n'y
arrive pas.
Si quelqu'un peut me donner un petit coup de main, merci d'avance.
Julie.
Bonjour,
Private Sub TextBox1_BeforeUpdate(ByVal Cancel As
MSForms.ReturnBoolean)
Set x = [A:A].Find(what:=Me.TextBox1, lookat:=xlWhole)
If x Is Nothing Then
MsgBox "inconnu"
Cancel = True
End If
End Sub
http://cjoint.com/?gmnCdBXWKZ
JB
On 12 juin, 13:12, JulieH <jul...@discussions.microsoft.com> wrote:
Bonjour,
Le code suivant fourni par JB me permet de faire exactement ce que je
souhaite, à savoir : rechercher dans une "base" la valeur de la TextBox1
et recopier les données des différentes TextBox dans les cellules de droite.
Private Sub B_ok_Click()
Application.ScreenUpdating = False
Set x = [Feuil1].[A:A].Find(what:=Me.TextBox1, lookat:=xlWhole)
y = Me.TextBox1.Value
If Not x Is Nothing Then
For i = 2 To 5
If IsNumeric(Me("textbox" & i)) Then
Cells(x.Row, i + 2) = CDbl(Me("textbox" & i))
Else
Cells(x.Row, i + 2) = Me("textbox" & i)
End If
Me("textbox" & i) = ""
Next i
Me.TextBox1 = ""
Else
MsgBox "L'animal dont le numéro de tatouage est " & y & vbNewLine
& " n'existe pas dans l'élevage."
End If
Me.TextBox1.SetFocus
End Sub
Je voudrais savoir le plus tôt possible (dès la validation de la
TextBox1) si l'animal est présent dans la base. Or dans la Macro, il
faut attendre la validation finale, c'est à dire après la saisie dans
les TextBox.
J'ai essayé un certain nombre de choses dont "Is x is nothing", je n'y
arrive pas.
Si quelqu'un peut me donner un petit coup de main, merci d'avance.
Julie.
Bonjour,
Private Sub TextBox1_BeforeUpdate(ByVal Cancel As
MSForms.ReturnBoolean)
Set x = [A:A].Find(what:=Me.TextBox1, lookat:=xlWhole)
If x Is Nothing Then
MsgBox "inconnu"
Cancel = True
End If
End Sub
http://cjoint.com/?gmnCdBXWKZ
JB
On 12 juin, 13:12, JulieH wrote:Bonjour,
Le code suivant fourni par JB me permet de faire exactement ce que je
souhaite, à savoir : rechercher dans une "base" la valeur de la TextBox1
et recopier les données des différentes TextBox dans les cellules de droite.
Private Sub B_ok_Click()
Application.ScreenUpdating = False
Set x = [Feuil1].[A:A].Find(what:=Me.TextBox1, lookat:=xlWhole)
y = Me.TextBox1.Value
If Not x Is Nothing Then
For i = 2 To 5
If IsNumeric(Me("textbox" & i)) Then
Cells(x.Row, i + 2) = CDbl(Me("textbox" & i))
Else
Cells(x.Row, i + 2) = Me("textbox" & i)
End If
Me("textbox" & i) = ""
Next i
Me.TextBox1 = ""
Else
MsgBox "L'animal dont le numéro de tatouage est " & y & vbNewLine
& " n'existe pas dans l'élevage."
End If
Me.TextBox1.SetFocus
End Sub
Je voudrais savoir le plus tôt possible (dès la validation de la
TextBox1) si l'animal est présent dans la base. Or dans la Macro, il
faut attendre la validation finale, c'est à dire après la saisie dans
les TextBox.
J'ai essayé un certain nombre de choses dont "Is x is nothing", je n'y
arrive pas.
Si quelqu'un peut me donner un petit coup de main, merci d'avance.
Julie.
Bonjour et merci à nouveau,
C'est parfait comme d'habitude.
Question annexe : peut-on détecter sur validation de la TextBox 1 si on
a déjà saisi des données pour cet animal. Le problème est qu'il f aut
vérifier de la colonne B à F (dans ton exemple) car il n'y a pas
toujours d'informations en B.
JulieBonjour,
Private Sub TextBox1_BeforeUpdate(ByVal Cancel As
MSForms.ReturnBoolean)
Set x = [A:A].Find(what:=Me.TextBox1, lookat:=xlWhole)
If x Is Nothing Then
MsgBox "inconnu"
Cancel = True
End If
End Sub
http://cjoint.com/?gmnCdBXWKZ
JB
On 12 juin, 13:12, JulieH wrote:Bonjour,
Le code suivant fourni par JB me permet de faire exactement ce que je
souhaite, à savoir : rechercher dans une "base" la valeur de la Text Box1
et recopier les données des différentes TextBox dans les cellules de droite.
Private Sub B_ok_Click()
Application.ScreenUpdating = False
Set x = [Feuil1].[A:A].Find(what:=Me.TextBox1, lookat:=xlWho le)
y = Me.TextBox1.Value
If Not x Is Nothing Then
For i = 2 To 5
If IsNumeric(Me("textbox" & i)) Then
Cells(x.Row, i + 2) = CDbl(Me("textbox" & i))
Else
Cells(x.Row, i + 2) = Me("textbox" & i)
End If
Me("textbox" & i) = ""
Next i
Me.TextBox1 = ""
Else
MsgBox "L'animal dont le numéro de tatouage est " & y & vbNewL ine
& " n'existe pas dans l'élevage."
End If
Me.TextBox1.SetFocus
End Sub
Je voudrais savoir le plus tôt possible (dès la validation de la
TextBox1) si l'animal est présent dans la base. Or dans la Macro, il
faut attendre la validation finale, c'est à dire après la saisie d ans
les TextBox.
J'ai essayé un certain nombre de choses dont "Is x is nothin g", je n'y
arrive pas.
Si quelqu'un peut me donner un petit coup de main, merci d'avance.
Julie.- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -
Bonjour et merci à nouveau,
C'est parfait comme d'habitude.
Question annexe : peut-on détecter sur validation de la TextBox 1 si on
a déjà saisi des données pour cet animal. Le problème est qu'il f aut
vérifier de la colonne B à F (dans ton exemple) car il n'y a pas
toujours d'informations en B.
Julie
Bonjour,
Private Sub TextBox1_BeforeUpdate(ByVal Cancel As
MSForms.ReturnBoolean)
Set x = [A:A].Find(what:=Me.TextBox1, lookat:=xlWhole)
If x Is Nothing Then
MsgBox "inconnu"
Cancel = True
End If
End Sub
http://cjoint.com/?gmnCdBXWKZ
JB
On 12 juin, 13:12, JulieH <jul...@discussions.microsoft.com> wrote:
Bonjour,
Le code suivant fourni par JB me permet de faire exactement ce que je
souhaite, à savoir : rechercher dans une "base" la valeur de la Text Box1
et recopier les données des différentes TextBox dans les cellules de droite.
Private Sub B_ok_Click()
Application.ScreenUpdating = False
Set x = [Feuil1].[A:A].Find(what:=Me.TextBox1, lookat:=xlWho le)
y = Me.TextBox1.Value
If Not x Is Nothing Then
For i = 2 To 5
If IsNumeric(Me("textbox" & i)) Then
Cells(x.Row, i + 2) = CDbl(Me("textbox" & i))
Else
Cells(x.Row, i + 2) = Me("textbox" & i)
End If
Me("textbox" & i) = ""
Next i
Me.TextBox1 = ""
Else
MsgBox "L'animal dont le numéro de tatouage est " & y & vbNewL ine
& " n'existe pas dans l'élevage."
End If
Me.TextBox1.SetFocus
End Sub
Je voudrais savoir le plus tôt possible (dès la validation de la
TextBox1) si l'animal est présent dans la base. Or dans la Macro, il
faut attendre la validation finale, c'est à dire après la saisie d ans
les TextBox.
J'ai essayé un certain nombre de choses dont "Is x is nothin g", je n'y
arrive pas.
Si quelqu'un peut me donner un petit coup de main, merci d'avance.
Julie.- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -
Bonjour et merci à nouveau,
C'est parfait comme d'habitude.
Question annexe : peut-on détecter sur validation de la TextBox 1 si on
a déjà saisi des données pour cet animal. Le problème est qu'il f aut
vérifier de la colonne B à F (dans ton exemple) car il n'y a pas
toujours d'informations en B.
JulieBonjour,
Private Sub TextBox1_BeforeUpdate(ByVal Cancel As
MSForms.ReturnBoolean)
Set x = [A:A].Find(what:=Me.TextBox1, lookat:=xlWhole)
If x Is Nothing Then
MsgBox "inconnu"
Cancel = True
End If
End Sub
http://cjoint.com/?gmnCdBXWKZ
JB
On 12 juin, 13:12, JulieH wrote:Bonjour,
Le code suivant fourni par JB me permet de faire exactement ce que je
souhaite, à savoir : rechercher dans une "base" la valeur de la Text Box1
et recopier les données des différentes TextBox dans les cellules de droite.
Private Sub B_ok_Click()
Application.ScreenUpdating = False
Set x = [Feuil1].[A:A].Find(what:=Me.TextBox1, lookat:=xlWho le)
y = Me.TextBox1.Value
If Not x Is Nothing Then
For i = 2 To 5
If IsNumeric(Me("textbox" & i)) Then
Cells(x.Row, i + 2) = CDbl(Me("textbox" & i))
Else
Cells(x.Row, i + 2) = Me("textbox" & i)
End If
Me("textbox" & i) = ""
Next i
Me.TextBox1 = ""
Else
MsgBox "L'animal dont le numéro de tatouage est " & y & vbNewL ine
& " n'existe pas dans l'élevage."
End If
Me.TextBox1.SetFocus
End Sub
Je voudrais savoir le plus tôt possible (dès la validation de la
TextBox1) si l'animal est présent dans la base. Or dans la Macro, il
faut attendre la validation finale, c'est à dire après la saisie d ans
les TextBox.
J'ai essayé un certain nombre de choses dont "Is x is nothin g", je n'y
arrive pas.
Si quelqu'un peut me donner un petit coup de main, merci d'avance.
Julie.- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -
On affiche les infos du tableau dans le formulaire??
Private Sub TextBox1_BeforeUpdate(ByVal Cancel As
MSForms.ReturnBoolean)
Set x = [A:A].Find(what:=Me.TextBox1, lookat:=xlWhole)
If x Is Nothing Then
MsgBox "inconnu"
Cancel = True
Else
For i = 2 To 6
Me("textbox" & i) = Cells(x.Row, i)
Next i
End If
End Sub
JB
On 12 juin, 14:15, JulieH wrote:Bonjour et merci à nouveau,
C'est parfait comme d'habitude.
Question annexe : peut-on détecter sur validation de la TextBox1 si on
a déjà saisi des données pour cet animal. Le problème est qu'il faut
vérifier de la colonne B à F (dans ton exemple) car il n'y a pas
toujours d'informations en B.
JulieBonjour,
Private Sub TextBox1_BeforeUpdate(ByVal Cancel As
MSForms.ReturnBoolean)
Set x = [A:A].Find(what:=Me.TextBox1, lookat:=xlWhole)
If x Is Nothing Then
MsgBox "inconnu"
Cancel = True
End If
End Sub
http://cjoint.com/?gmnCdBXWKZ
JB
On 12 juin, 13:12, JulieH wrote:Bonjour,
Le code suivant fourni par JB me permet de faire exactement ce que je
souhaite, à savoir : rechercher dans une "base" la valeur de la TextBox1
et recopier les données des différentes TextBox dans les cellules de droite.
Private Sub B_ok_Click()
Application.ScreenUpdating = False
Set x = [Feuil1].[A:A].Find(what:=Me.TextBox1, lookat:=xlWhole)
y = Me.TextBox1.Value
If Not x Is Nothing Then
For i = 2 To 5
If IsNumeric(Me("textbox" & i)) Then
Cells(x.Row, i + 2) = CDbl(Me("textbox" & i))
Else
Cells(x.Row, i + 2) = Me("textbox" & i)
End If
Me("textbox" & i) = ""
Next i
Me.TextBox1 = ""
Else
MsgBox "L'animal dont le numéro de tatouage est " & y & vbNewLine
& " n'existe pas dans l'élevage."
End If
Me.TextBox1.SetFocus
End Sub
Je voudrais savoir le plus tôt possible (dès la validation de la
TextBox1) si l'animal est présent dans la base. Or dans la Macro, il
faut attendre la validation finale, c'est à dire après la saisie dans
les TextBox.
J'ai essayé un certain nombre de choses dont "Is x is nothing", je n'y
arrive pas.
Si quelqu'un peut me donner un petit coup de main, merci d'avance.
Julie.- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -
On affiche les infos du tableau dans le formulaire??
Private Sub TextBox1_BeforeUpdate(ByVal Cancel As
MSForms.ReturnBoolean)
Set x = [A:A].Find(what:=Me.TextBox1, lookat:=xlWhole)
If x Is Nothing Then
MsgBox "inconnu"
Cancel = True
Else
For i = 2 To 6
Me("textbox" & i) = Cells(x.Row, i)
Next i
End If
End Sub
JB
On 12 juin, 14:15, JulieH <jul...@discussions.microsoft.com> wrote:
Bonjour et merci à nouveau,
C'est parfait comme d'habitude.
Question annexe : peut-on détecter sur validation de la TextBox1 si on
a déjà saisi des données pour cet animal. Le problème est qu'il faut
vérifier de la colonne B à F (dans ton exemple) car il n'y a pas
toujours d'informations en B.
Julie
Bonjour,
Private Sub TextBox1_BeforeUpdate(ByVal Cancel As
MSForms.ReturnBoolean)
Set x = [A:A].Find(what:=Me.TextBox1, lookat:=xlWhole)
If x Is Nothing Then
MsgBox "inconnu"
Cancel = True
End If
End Sub
http://cjoint.com/?gmnCdBXWKZ
JB
On 12 juin, 13:12, JulieH <jul...@discussions.microsoft.com> wrote:
Bonjour,
Le code suivant fourni par JB me permet de faire exactement ce que je
souhaite, à savoir : rechercher dans une "base" la valeur de la TextBox1
et recopier les données des différentes TextBox dans les cellules de droite.
Private Sub B_ok_Click()
Application.ScreenUpdating = False
Set x = [Feuil1].[A:A].Find(what:=Me.TextBox1, lookat:=xlWhole)
y = Me.TextBox1.Value
If Not x Is Nothing Then
For i = 2 To 5
If IsNumeric(Me("textbox" & i)) Then
Cells(x.Row, i + 2) = CDbl(Me("textbox" & i))
Else
Cells(x.Row, i + 2) = Me("textbox" & i)
End If
Me("textbox" & i) = ""
Next i
Me.TextBox1 = ""
Else
MsgBox "L'animal dont le numéro de tatouage est " & y & vbNewLine
& " n'existe pas dans l'élevage."
End If
Me.TextBox1.SetFocus
End Sub
Je voudrais savoir le plus tôt possible (dès la validation de la
TextBox1) si l'animal est présent dans la base. Or dans la Macro, il
faut attendre la validation finale, c'est à dire après la saisie dans
les TextBox.
J'ai essayé un certain nombre de choses dont "Is x is nothing", je n'y
arrive pas.
Si quelqu'un peut me donner un petit coup de main, merci d'avance.
Julie.- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -
On affiche les infos du tableau dans le formulaire??
Private Sub TextBox1_BeforeUpdate(ByVal Cancel As
MSForms.ReturnBoolean)
Set x = [A:A].Find(what:=Me.TextBox1, lookat:=xlWhole)
If x Is Nothing Then
MsgBox "inconnu"
Cancel = True
Else
For i = 2 To 6
Me("textbox" & i) = Cells(x.Row, i)
Next i
End If
End Sub
JB
On 12 juin, 14:15, JulieH wrote:Bonjour et merci à nouveau,
C'est parfait comme d'habitude.
Question annexe : peut-on détecter sur validation de la TextBox1 si on
a déjà saisi des données pour cet animal. Le problème est qu'il faut
vérifier de la colonne B à F (dans ton exemple) car il n'y a pas
toujours d'informations en B.
JulieBonjour,
Private Sub TextBox1_BeforeUpdate(ByVal Cancel As
MSForms.ReturnBoolean)
Set x = [A:A].Find(what:=Me.TextBox1, lookat:=xlWhole)
If x Is Nothing Then
MsgBox "inconnu"
Cancel = True
End If
End Sub
http://cjoint.com/?gmnCdBXWKZ
JB
On 12 juin, 13:12, JulieH wrote:Bonjour,
Le code suivant fourni par JB me permet de faire exactement ce que je
souhaite, à savoir : rechercher dans une "base" la valeur de la TextBox1
et recopier les données des différentes TextBox dans les cellules de droite.
Private Sub B_ok_Click()
Application.ScreenUpdating = False
Set x = [Feuil1].[A:A].Find(what:=Me.TextBox1, lookat:=xlWhole)
y = Me.TextBox1.Value
If Not x Is Nothing Then
For i = 2 To 5
If IsNumeric(Me("textbox" & i)) Then
Cells(x.Row, i + 2) = CDbl(Me("textbox" & i))
Else
Cells(x.Row, i + 2) = Me("textbox" & i)
End If
Me("textbox" & i) = ""
Next i
Me.TextBox1 = ""
Else
MsgBox "L'animal dont le numéro de tatouage est " & y & vbNewLine
& " n'existe pas dans l'élevage."
End If
Me.TextBox1.SetFocus
End Sub
Je voudrais savoir le plus tôt possible (dès la validation de la
TextBox1) si l'animal est présent dans la base. Or dans la Macro, il
faut attendre la validation finale, c'est à dire après la saisie dans
les TextBox.
J'ai essayé un certain nombre de choses dont "Is x is nothing", je n'y
arrive pas.
Si quelqu'un peut me donner un petit coup de main, merci d'avance.
Julie.- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -
Ce que tu proposes est vraiment très intéressant mais j'hésite un p eu à
le mettre en place. J'avais plutôt imaginé une MsgBox qui m'indique
qu'il y a déjà des valeurs saisies. Est-ce possible facilement ?
Si je reviens à la première question (gestion du numéro qui n'existe
pas), j'ai essayé de mettre en application. Tout se passe bien mais je
n'arrive pas à effacer les données de la TextBox1 et lui rendre le fo cus.
Me.TextBox1 = ""
Me.TextBox1.SetFocus
Ne fonctionnent pas dans ma Macro.
JulieOn affiche les infos du tableau dans le formulaire??
Private Sub TextBox1_BeforeUpdate(ByVal Cancel As
MSForms.ReturnBoolean)
Set x = [A:A].Find(what:=Me.TextBox1, lookat:=xlWhole)
If x Is Nothing Then
MsgBox "inconnu"
Cancel = True
Else
For i = 2 To 6
Me("textbox" & i) = Cells(x.Row, i)
Next i
End If
End Sub
JB
On 12 juin, 14:15, JulieH wrote:Bonjour et merci à nouveau,
C'est parfait comme d'habitude.
Question annexe : peut-on détecter sur validation de la Text Box1 si on
a déjà saisi des données pour cet animal. Le problème est qu'i l faut
vérifier de la colonne B à F (dans ton exemple) car il n'y a pas
toujours d'informations en B.
JulieBonjour,
Private Sub TextBox1_BeforeUpdate(ByVal Cancel As
MSForms.ReturnBoolean)
Set x = [A:A].Find(what:=Me.TextBox1, lookat:=xlWhole)
If x Is Nothing Then
MsgBox "inconnu"
Cancel = True
End If
End Sub
http://cjoint.com/?gmnCdBXWKZ
JB
On 12 juin, 13:12, JulieH wrote:Bonjour,
Le code suivant fourni par JB me permet de faire exactement ce que je
souhaite, à savoir : rechercher dans une "base" la valeur de la Te xtBox1
et recopier les données des différentes TextBox dans les cellule s de droite.
Private Sub B_ok_Click()
Application.ScreenUpdating = False
Set x = [Feuil1].[A:A].Find(what:=Me.TextBox1, lookat:=xlW hole)
y = Me.TextBox1.Value
If Not x Is Nothing Then
For i = 2 To 5
If IsNumeric(Me("textbox" & i)) Then
Cells(x.Row, i + 2) = CDbl(Me("textbox" & i))
Else
Cells(x.Row, i + 2) = Me("textbox" & i)
End If
Me("textbox" & i) = ""
Next i
Me.TextBox1 = ""
Else
MsgBox "L'animal dont le numéro de tatouage est " & y & vbNe wLine
& " n'existe pas dans l'élevage."
End If
Me.TextBox1.SetFocus
End Sub
Je voudrais savoir le plus tôt possible (dès la validati on de la
TextBox1) si l'animal est présent dans la base. Or dans la Macro, il
faut attendre la validation finale, c'est à dire après la saisie dans
les TextBox.
J'ai essayé un certain nombre de choses dont "Is x is noth ing", je n'y
arrive pas.
Si quelqu'un peut me donner un petit coup de main, merci d'avance.
Julie.- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -- Masquer le texte de s messages précédents -
- Afficher le texte des messages précédents -
Ce que tu proposes est vraiment très intéressant mais j'hésite un p eu à
le mettre en place. J'avais plutôt imaginé une MsgBox qui m'indique
qu'il y a déjà des valeurs saisies. Est-ce possible facilement ?
Si je reviens à la première question (gestion du numéro qui n'existe
pas), j'ai essayé de mettre en application. Tout se passe bien mais je
n'arrive pas à effacer les données de la TextBox1 et lui rendre le fo cus.
Me.TextBox1 = ""
Me.TextBox1.SetFocus
Ne fonctionnent pas dans ma Macro.
Julie
On affiche les infos du tableau dans le formulaire??
Private Sub TextBox1_BeforeUpdate(ByVal Cancel As
MSForms.ReturnBoolean)
Set x = [A:A].Find(what:=Me.TextBox1, lookat:=xlWhole)
If x Is Nothing Then
MsgBox "inconnu"
Cancel = True
Else
For i = 2 To 6
Me("textbox" & i) = Cells(x.Row, i)
Next i
End If
End Sub
JB
On 12 juin, 14:15, JulieH <jul...@discussions.microsoft.com> wrote:
Bonjour et merci à nouveau,
C'est parfait comme d'habitude.
Question annexe : peut-on détecter sur validation de la Text Box1 si on
a déjà saisi des données pour cet animal. Le problème est qu'i l faut
vérifier de la colonne B à F (dans ton exemple) car il n'y a pas
toujours d'informations en B.
Julie
Bonjour,
Private Sub TextBox1_BeforeUpdate(ByVal Cancel As
MSForms.ReturnBoolean)
Set x = [A:A].Find(what:=Me.TextBox1, lookat:=xlWhole)
If x Is Nothing Then
MsgBox "inconnu"
Cancel = True
End If
End Sub
http://cjoint.com/?gmnCdBXWKZ
JB
On 12 juin, 13:12, JulieH <jul...@discussions.microsoft.com> wrote:
Bonjour,
Le code suivant fourni par JB me permet de faire exactement ce que je
souhaite, à savoir : rechercher dans une "base" la valeur de la Te xtBox1
et recopier les données des différentes TextBox dans les cellule s de droite.
Private Sub B_ok_Click()
Application.ScreenUpdating = False
Set x = [Feuil1].[A:A].Find(what:=Me.TextBox1, lookat:=xlW hole)
y = Me.TextBox1.Value
If Not x Is Nothing Then
For i = 2 To 5
If IsNumeric(Me("textbox" & i)) Then
Cells(x.Row, i + 2) = CDbl(Me("textbox" & i))
Else
Cells(x.Row, i + 2) = Me("textbox" & i)
End If
Me("textbox" & i) = ""
Next i
Me.TextBox1 = ""
Else
MsgBox "L'animal dont le numéro de tatouage est " & y & vbNe wLine
& " n'existe pas dans l'élevage."
End If
Me.TextBox1.SetFocus
End Sub
Je voudrais savoir le plus tôt possible (dès la validati on de la
TextBox1) si l'animal est présent dans la base. Or dans la Macro, il
faut attendre la validation finale, c'est à dire après la saisie dans
les TextBox.
J'ai essayé un certain nombre de choses dont "Is x is noth ing", je n'y
arrive pas.
Si quelqu'un peut me donner un petit coup de main, merci d'avance.
Julie.- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -- Masquer le texte de s messages précédents -
- Afficher le texte des messages précédents -
Ce que tu proposes est vraiment très intéressant mais j'hésite un p eu à
le mettre en place. J'avais plutôt imaginé une MsgBox qui m'indique
qu'il y a déjà des valeurs saisies. Est-ce possible facilement ?
Si je reviens à la première question (gestion du numéro qui n'existe
pas), j'ai essayé de mettre en application. Tout se passe bien mais je
n'arrive pas à effacer les données de la TextBox1 et lui rendre le fo cus.
Me.TextBox1 = ""
Me.TextBox1.SetFocus
Ne fonctionnent pas dans ma Macro.
JulieOn affiche les infos du tableau dans le formulaire??
Private Sub TextBox1_BeforeUpdate(ByVal Cancel As
MSForms.ReturnBoolean)
Set x = [A:A].Find(what:=Me.TextBox1, lookat:=xlWhole)
If x Is Nothing Then
MsgBox "inconnu"
Cancel = True
Else
For i = 2 To 6
Me("textbox" & i) = Cells(x.Row, i)
Next i
End If
End Sub
JB
On 12 juin, 14:15, JulieH wrote:Bonjour et merci à nouveau,
C'est parfait comme d'habitude.
Question annexe : peut-on détecter sur validation de la Text Box1 si on
a déjà saisi des données pour cet animal. Le problème est qu'i l faut
vérifier de la colonne B à F (dans ton exemple) car il n'y a pas
toujours d'informations en B.
JulieBonjour,
Private Sub TextBox1_BeforeUpdate(ByVal Cancel As
MSForms.ReturnBoolean)
Set x = [A:A].Find(what:=Me.TextBox1, lookat:=xlWhole)
If x Is Nothing Then
MsgBox "inconnu"
Cancel = True
End If
End Sub
http://cjoint.com/?gmnCdBXWKZ
JB
On 12 juin, 13:12, JulieH wrote:Bonjour,
Le code suivant fourni par JB me permet de faire exactement ce que je
souhaite, à savoir : rechercher dans une "base" la valeur de la Te xtBox1
et recopier les données des différentes TextBox dans les cellule s de droite.
Private Sub B_ok_Click()
Application.ScreenUpdating = False
Set x = [Feuil1].[A:A].Find(what:=Me.TextBox1, lookat:=xlW hole)
y = Me.TextBox1.Value
If Not x Is Nothing Then
For i = 2 To 5
If IsNumeric(Me("textbox" & i)) Then
Cells(x.Row, i + 2) = CDbl(Me("textbox" & i))
Else
Cells(x.Row, i + 2) = Me("textbox" & i)
End If
Me("textbox" & i) = ""
Next i
Me.TextBox1 = ""
Else
MsgBox "L'animal dont le numéro de tatouage est " & y & vbNe wLine
& " n'existe pas dans l'élevage."
End If
Me.TextBox1.SetFocus
End Sub
Je voudrais savoir le plus tôt possible (dès la validati on de la
TextBox1) si l'animal est présent dans la base. Or dans la Macro, il
faut attendre la validation finale, c'est à dire après la saisie dans
les TextBox.
J'ai essayé un certain nombre de choses dont "Is x is noth ing", je n'y
arrive pas.
Si quelqu'un peut me donner un petit coup de main, merci d'avance.
Julie.- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -- Masquer le texte de s messages précédents -
- Afficher le texte des messages précédents -
Private Sub TextBox1_BeforeUpdate(ByVal Cancel As
MSForms.ReturnBoolean)
If Me.TextBox1 <> "" Then
Set x = [A:A].Find(what:=Me.TextBox1, lookat:=xlWhole)
If x Is Nothing Then
MsgBox "inconnu"
Cancel = True
Else
If Application.CountA(Cells(x.Row, 2).Resize(1, 5)) > 0 Then
MsgBox "Données déjà saisies!"
Me.TextBox1 = ""
Cancel = True
End If
End If
End If
End Sub
http://cjoint.com/?gmpUXfJG7D
JB
On 12 juin, 15:31, JulieH wrote:Ce que tu proposes est vraiment très intéressant mais j'hésite un peu à
le mettre en place. J'avais plutôt imaginé une MsgBox qui m'indique
qu'il y a déjà des valeurs saisies. Est-ce possible facilement ?
Si je reviens à la première question (gestion du numéro qui n'existe
pas), j'ai essayé de mettre en application. Tout se passe bien mais je
n'arrive pas à effacer les données de la TextBox1 et lui rendre le focus.
Me.TextBox1 = ""
Me.TextBox1.SetFocus
Ne fonctionnent pas dans ma Macro.
JulieOn affiche les infos du tableau dans le formulaire??
Private Sub TextBox1_BeforeUpdate(ByVal Cancel As
MSForms.ReturnBoolean)
Set x = [A:A].Find(what:=Me.TextBox1, lookat:=xlWhole)
If x Is Nothing Then
MsgBox "inconnu"
Cancel = True
Else
For i = 2 To 6
Me("textbox" & i) = Cells(x.Row, i)
Next i
End If
End Sub
JB
On 12 juin, 14:15, JulieH wrote:Bonjour et merci à nouveau,
C'est parfait comme d'habitude.
Question annexe : peut-on détecter sur validation de la TextBox1 si on
a déjà saisi des données pour cet animal. Le problème est qu'il faut
vérifier de la colonne B à F (dans ton exemple) car il n'y a pas
toujours d'informations en B.
JulieBonjour,
Private Sub TextBox1_BeforeUpdate(ByVal Cancel As
MSForms.ReturnBoolean)
Set x = [A:A].Find(what:=Me.TextBox1, lookat:=xlWhole)
If x Is Nothing Then
MsgBox "inconnu"
Cancel = True
End If
End Sub
http://cjoint.com/?gmnCdBXWKZ
JB
On 12 juin, 13:12, JulieH wrote:Bonjour,
Le code suivant fourni par JB me permet de faire exactement ce que je
souhaite, à savoir : rechercher dans une "base" la valeur de la TextBox1
et recopier les données des différentes TextBox dans les cellules de droite.
Private Sub B_ok_Click()
Application.ScreenUpdating = False
Set x = [Feuil1].[A:A].Find(what:=Me.TextBox1, lookat:=xlWhole)
y = Me.TextBox1.Value
If Not x Is Nothing Then
For i = 2 To 5
If IsNumeric(Me("textbox" & i)) Then
Cells(x.Row, i + 2) = CDbl(Me("textbox" & i))
Else
Cells(x.Row, i + 2) = Me("textbox" & i)
End If
Me("textbox" & i) = ""
Next i
Me.TextBox1 = ""
Else
MsgBox "L'animal dont le numéro de tatouage est " & y & vbNewLine
& " n'existe pas dans l'élevage."
End If
Me.TextBox1.SetFocus
End Sub
Je voudrais savoir le plus tôt possible (dès la validation de la
TextBox1) si l'animal est présent dans la base. Or dans la Macro, il
faut attendre la validation finale, c'est à dire après la saisie dans
les TextBox.
J'ai essayé un certain nombre de choses dont "Is x is nothing", je n'y
arrive pas.
Si quelqu'un peut me donner un petit coup de main, merci d'avance.
Julie.- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -
Private Sub TextBox1_BeforeUpdate(ByVal Cancel As
MSForms.ReturnBoolean)
If Me.TextBox1 <> "" Then
Set x = [A:A].Find(what:=Me.TextBox1, lookat:=xlWhole)
If x Is Nothing Then
MsgBox "inconnu"
Cancel = True
Else
If Application.CountA(Cells(x.Row, 2).Resize(1, 5)) > 0 Then
MsgBox "Données déjà saisies!"
Me.TextBox1 = ""
Cancel = True
End If
End If
End If
End Sub
http://cjoint.com/?gmpUXfJG7D
JB
On 12 juin, 15:31, JulieH <jul...@discussions.microsoft.com> wrote:
Ce que tu proposes est vraiment très intéressant mais j'hésite un peu à
le mettre en place. J'avais plutôt imaginé une MsgBox qui m'indique
qu'il y a déjà des valeurs saisies. Est-ce possible facilement ?
Si je reviens à la première question (gestion du numéro qui n'existe
pas), j'ai essayé de mettre en application. Tout se passe bien mais je
n'arrive pas à effacer les données de la TextBox1 et lui rendre le focus.
Me.TextBox1 = ""
Me.TextBox1.SetFocus
Ne fonctionnent pas dans ma Macro.
Julie
On affiche les infos du tableau dans le formulaire??
Private Sub TextBox1_BeforeUpdate(ByVal Cancel As
MSForms.ReturnBoolean)
Set x = [A:A].Find(what:=Me.TextBox1, lookat:=xlWhole)
If x Is Nothing Then
MsgBox "inconnu"
Cancel = True
Else
For i = 2 To 6
Me("textbox" & i) = Cells(x.Row, i)
Next i
End If
End Sub
JB
On 12 juin, 14:15, JulieH <jul...@discussions.microsoft.com> wrote:
Bonjour et merci à nouveau,
C'est parfait comme d'habitude.
Question annexe : peut-on détecter sur validation de la TextBox1 si on
a déjà saisi des données pour cet animal. Le problème est qu'il faut
vérifier de la colonne B à F (dans ton exemple) car il n'y a pas
toujours d'informations en B.
Julie
Bonjour,
Private Sub TextBox1_BeforeUpdate(ByVal Cancel As
MSForms.ReturnBoolean)
Set x = [A:A].Find(what:=Me.TextBox1, lookat:=xlWhole)
If x Is Nothing Then
MsgBox "inconnu"
Cancel = True
End If
End Sub
http://cjoint.com/?gmnCdBXWKZ
JB
On 12 juin, 13:12, JulieH <jul...@discussions.microsoft.com> wrote:
Bonjour,
Le code suivant fourni par JB me permet de faire exactement ce que je
souhaite, à savoir : rechercher dans une "base" la valeur de la TextBox1
et recopier les données des différentes TextBox dans les cellules de droite.
Private Sub B_ok_Click()
Application.ScreenUpdating = False
Set x = [Feuil1].[A:A].Find(what:=Me.TextBox1, lookat:=xlWhole)
y = Me.TextBox1.Value
If Not x Is Nothing Then
For i = 2 To 5
If IsNumeric(Me("textbox" & i)) Then
Cells(x.Row, i + 2) = CDbl(Me("textbox" & i))
Else
Cells(x.Row, i + 2) = Me("textbox" & i)
End If
Me("textbox" & i) = ""
Next i
Me.TextBox1 = ""
Else
MsgBox "L'animal dont le numéro de tatouage est " & y & vbNewLine
& " n'existe pas dans l'élevage."
End If
Me.TextBox1.SetFocus
End Sub
Je voudrais savoir le plus tôt possible (dès la validation de la
TextBox1) si l'animal est présent dans la base. Or dans la Macro, il
faut attendre la validation finale, c'est à dire après la saisie dans
les TextBox.
J'ai essayé un certain nombre de choses dont "Is x is nothing", je n'y
arrive pas.
Si quelqu'un peut me donner un petit coup de main, merci d'avance.
Julie.- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -
Private Sub TextBox1_BeforeUpdate(ByVal Cancel As
MSForms.ReturnBoolean)
If Me.TextBox1 <> "" Then
Set x = [A:A].Find(what:=Me.TextBox1, lookat:=xlWhole)
If x Is Nothing Then
MsgBox "inconnu"
Cancel = True
Else
If Application.CountA(Cells(x.Row, 2).Resize(1, 5)) > 0 Then
MsgBox "Données déjà saisies!"
Me.TextBox1 = ""
Cancel = True
End If
End If
End If
End Sub
http://cjoint.com/?gmpUXfJG7D
JB
On 12 juin, 15:31, JulieH wrote:Ce que tu proposes est vraiment très intéressant mais j'hésite un peu à
le mettre en place. J'avais plutôt imaginé une MsgBox qui m'indique
qu'il y a déjà des valeurs saisies. Est-ce possible facilement ?
Si je reviens à la première question (gestion du numéro qui n'existe
pas), j'ai essayé de mettre en application. Tout se passe bien mais je
n'arrive pas à effacer les données de la TextBox1 et lui rendre le focus.
Me.TextBox1 = ""
Me.TextBox1.SetFocus
Ne fonctionnent pas dans ma Macro.
JulieOn affiche les infos du tableau dans le formulaire??
Private Sub TextBox1_BeforeUpdate(ByVal Cancel As
MSForms.ReturnBoolean)
Set x = [A:A].Find(what:=Me.TextBox1, lookat:=xlWhole)
If x Is Nothing Then
MsgBox "inconnu"
Cancel = True
Else
For i = 2 To 6
Me("textbox" & i) = Cells(x.Row, i)
Next i
End If
End Sub
JB
On 12 juin, 14:15, JulieH wrote:Bonjour et merci à nouveau,
C'est parfait comme d'habitude.
Question annexe : peut-on détecter sur validation de la TextBox1 si on
a déjà saisi des données pour cet animal. Le problème est qu'il faut
vérifier de la colonne B à F (dans ton exemple) car il n'y a pas
toujours d'informations en B.
JulieBonjour,
Private Sub TextBox1_BeforeUpdate(ByVal Cancel As
MSForms.ReturnBoolean)
Set x = [A:A].Find(what:=Me.TextBox1, lookat:=xlWhole)
If x Is Nothing Then
MsgBox "inconnu"
Cancel = True
End If
End Sub
http://cjoint.com/?gmnCdBXWKZ
JB
On 12 juin, 13:12, JulieH wrote:Bonjour,
Le code suivant fourni par JB me permet de faire exactement ce que je
souhaite, à savoir : rechercher dans une "base" la valeur de la TextBox1
et recopier les données des différentes TextBox dans les cellules de droite.
Private Sub B_ok_Click()
Application.ScreenUpdating = False
Set x = [Feuil1].[A:A].Find(what:=Me.TextBox1, lookat:=xlWhole)
y = Me.TextBox1.Value
If Not x Is Nothing Then
For i = 2 To 5
If IsNumeric(Me("textbox" & i)) Then
Cells(x.Row, i + 2) = CDbl(Me("textbox" & i))
Else
Cells(x.Row, i + 2) = Me("textbox" & i)
End If
Me("textbox" & i) = ""
Next i
Me.TextBox1 = ""
Else
MsgBox "L'animal dont le numéro de tatouage est " & y & vbNewLine
& " n'existe pas dans l'élevage."
End If
Me.TextBox1.SetFocus
End Sub
Je voudrais savoir le plus tôt possible (dès la validation de la
TextBox1) si l'animal est présent dans la base. Or dans la Macro, il
faut attendre la validation finale, c'est à dire après la saisie dans
les TextBox.
J'ai essayé un certain nombre de choses dont "Is x is nothing", je n'y
arrive pas.
Si quelqu'un peut me donner un petit coup de main, merci d'avance.
Julie.- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -
Private Sub TextBox1_BeforeUpdate(ByVal Cancel As
MSForms.ReturnBoolean)
If Me.TextBox1 <> "" Then
Set x = [A:A].Find(what:=Me.TextBox1, lookat:=xlWhole)
If x Is Nothing Then
MsgBox "inconnu"
Cancel = True
Else
If Application.CountA(Cells(x.Row, 2).Resize(1, 5)) > 0 Then
MsgBox "Données déjà saisies!"
Me.TextBox1 = ""
Cancel = True
End If
End If
End If
End Sub
http://cjoint.com/?gmpUXfJG7D
JB
On 12 juin, 15:31, JulieH wrote:Ce que tu proposes est vraiment très intéressant mais j'hésite un peu à
le mettre en place. J'avais plutôt imaginé une MsgBox qui m'indique
qu'il y a déjà des valeurs saisies. Est-ce possible facilement ?
Si je reviens à la première question (gestion du numéro qui n'existe
pas), j'ai essayé de mettre en application. Tout se passe bien mais je
n'arrive pas à effacer les données de la TextBox1 et lui rendre le focus.
Me.TextBox1 = ""
Me.TextBox1.SetFocus
Ne fonctionnent pas dans ma Macro.
JulieOn affiche les infos du tableau dans le formulaire??
Private Sub TextBox1_BeforeUpdate(ByVal Cancel As
MSForms.ReturnBoolean)
Set x = [A:A].Find(what:=Me.TextBox1, lookat:=xlWhole)
If x Is Nothing Then
MsgBox "inconnu"
Cancel = True
Else
For i = 2 To 6
Me("textbox" & i) = Cells(x.Row, i)
Next i
End If
End Sub
JB
On 12 juin, 14:15, JulieH wrote:Bonjour et merci à nouveau,
C'est parfait comme d'habitude.
Question annexe : peut-on détecter sur validation de la TextBox1 si on
a déjà saisi des données pour cet animal. Le problème est qu'il faut
vérifier de la colonne B à F (dans ton exemple) car il n'y a pas
toujours d'informations en B.
JulieBonjour,
Private Sub TextBox1_BeforeUpdate(ByVal Cancel As
MSForms.ReturnBoolean)
Set x = [A:A].Find(what:=Me.TextBox1, lookat:=xlWhole)
If x Is Nothing Then
MsgBox "inconnu"
Cancel = True
End If
End Sub
http://cjoint.com/?gmnCdBXWKZ
JB
On 12 juin, 13:12, JulieH wrote:Bonjour,
Le code suivant fourni par JB me permet de faire exactement ce que je
souhaite, à savoir : rechercher dans une "base" la valeur de la TextBox1
et recopier les données des différentes TextBox dans les cellules de droite.
Private Sub B_ok_Click()
Application.ScreenUpdating = False
Set x = [Feuil1].[A:A].Find(what:=Me.TextBox1, lookat:=xlWhole)
y = Me.TextBox1.Value
If Not x Is Nothing Then
For i = 2 To 5
If IsNumeric(Me("textbox" & i)) Then
Cells(x.Row, i + 2) = CDbl(Me("textbox" & i))
Else
Cells(x.Row, i + 2) = Me("textbox" & i)
End If
Me("textbox" & i) = ""
Next i
Me.TextBox1 = ""
Else
MsgBox "L'animal dont le numéro de tatouage est " & y & vbNewLine
& " n'existe pas dans l'élevage."
End If
Me.TextBox1.SetFocus
End Sub
Je voudrais savoir le plus tôt possible (dès la validation de la
TextBox1) si l'animal est présent dans la base. Or dans la Macro, il
faut attendre la validation finale, c'est à dire après la saisie dans
les TextBox.
J'ai essayé un certain nombre de choses dont "Is x is nothing", je n'y
arrive pas.
Si quelqu'un peut me donner un petit coup de main, merci d'avance.
Julie.- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -
Private Sub TextBox1_BeforeUpdate(ByVal Cancel As
MSForms.ReturnBoolean)
If Me.TextBox1 <> "" Then
Set x = [A:A].Find(what:=Me.TextBox1, lookat:=xlWhole)
If x Is Nothing Then
MsgBox "inconnu"
Cancel = True
Else
If Application.CountA(Cells(x.Row, 2).Resize(1, 5)) > 0 Then
MsgBox "Données déjà saisies!"
Me.TextBox1 = ""
Cancel = True
End If
End If
End If
End Sub
http://cjoint.com/?gmpUXfJG7D
JB
On 12 juin, 15:31, JulieH <jul...@discussions.microsoft.com> wrote:
Ce que tu proposes est vraiment très intéressant mais j'hésite un peu à
le mettre en place. J'avais plutôt imaginé une MsgBox qui m'indique
qu'il y a déjà des valeurs saisies. Est-ce possible facilement ?
Si je reviens à la première question (gestion du numéro qui n'existe
pas), j'ai essayé de mettre en application. Tout se passe bien mais je
n'arrive pas à effacer les données de la TextBox1 et lui rendre le focus.
Me.TextBox1 = ""
Me.TextBox1.SetFocus
Ne fonctionnent pas dans ma Macro.
Julie
On affiche les infos du tableau dans le formulaire??
Private Sub TextBox1_BeforeUpdate(ByVal Cancel As
MSForms.ReturnBoolean)
Set x = [A:A].Find(what:=Me.TextBox1, lookat:=xlWhole)
If x Is Nothing Then
MsgBox "inconnu"
Cancel = True
Else
For i = 2 To 6
Me("textbox" & i) = Cells(x.Row, i)
Next i
End If
End Sub
JB
On 12 juin, 14:15, JulieH <jul...@discussions.microsoft.com> wrote:
Bonjour et merci à nouveau,
C'est parfait comme d'habitude.
Question annexe : peut-on détecter sur validation de la TextBox1 si on
a déjà saisi des données pour cet animal. Le problème est qu'il faut
vérifier de la colonne B à F (dans ton exemple) car il n'y a pas
toujours d'informations en B.
Julie
Bonjour,
Private Sub TextBox1_BeforeUpdate(ByVal Cancel As
MSForms.ReturnBoolean)
Set x = [A:A].Find(what:=Me.TextBox1, lookat:=xlWhole)
If x Is Nothing Then
MsgBox "inconnu"
Cancel = True
End If
End Sub
http://cjoint.com/?gmnCdBXWKZ
JB
On 12 juin, 13:12, JulieH <jul...@discussions.microsoft.com> wrote:
Bonjour,
Le code suivant fourni par JB me permet de faire exactement ce que je
souhaite, à savoir : rechercher dans une "base" la valeur de la TextBox1
et recopier les données des différentes TextBox dans les cellules de droite.
Private Sub B_ok_Click()
Application.ScreenUpdating = False
Set x = [Feuil1].[A:A].Find(what:=Me.TextBox1, lookat:=xlWhole)
y = Me.TextBox1.Value
If Not x Is Nothing Then
For i = 2 To 5
If IsNumeric(Me("textbox" & i)) Then
Cells(x.Row, i + 2) = CDbl(Me("textbox" & i))
Else
Cells(x.Row, i + 2) = Me("textbox" & i)
End If
Me("textbox" & i) = ""
Next i
Me.TextBox1 = ""
Else
MsgBox "L'animal dont le numéro de tatouage est " & y & vbNewLine
& " n'existe pas dans l'élevage."
End If
Me.TextBox1.SetFocus
End Sub
Je voudrais savoir le plus tôt possible (dès la validation de la
TextBox1) si l'animal est présent dans la base. Or dans la Macro, il
faut attendre la validation finale, c'est à dire après la saisie dans
les TextBox.
J'ai essayé un certain nombre de choses dont "Is x is nothing", je n'y
arrive pas.
Si quelqu'un peut me donner un petit coup de main, merci d'avance.
Julie.- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -
Private Sub TextBox1_BeforeUpdate(ByVal Cancel As
MSForms.ReturnBoolean)
If Me.TextBox1 <> "" Then
Set x = [A:A].Find(what:=Me.TextBox1, lookat:=xlWhole)
If x Is Nothing Then
MsgBox "inconnu"
Cancel = True
Else
If Application.CountA(Cells(x.Row, 2).Resize(1, 5)) > 0 Then
MsgBox "Données déjà saisies!"
Me.TextBox1 = ""
Cancel = True
End If
End If
End If
End Sub
http://cjoint.com/?gmpUXfJG7D
JB
On 12 juin, 15:31, JulieH wrote:Ce que tu proposes est vraiment très intéressant mais j'hésite un peu à
le mettre en place. J'avais plutôt imaginé une MsgBox qui m'indique
qu'il y a déjà des valeurs saisies. Est-ce possible facilement ?
Si je reviens à la première question (gestion du numéro qui n'existe
pas), j'ai essayé de mettre en application. Tout se passe bien mais je
n'arrive pas à effacer les données de la TextBox1 et lui rendre le focus.
Me.TextBox1 = ""
Me.TextBox1.SetFocus
Ne fonctionnent pas dans ma Macro.
JulieOn affiche les infos du tableau dans le formulaire??
Private Sub TextBox1_BeforeUpdate(ByVal Cancel As
MSForms.ReturnBoolean)
Set x = [A:A].Find(what:=Me.TextBox1, lookat:=xlWhole)
If x Is Nothing Then
MsgBox "inconnu"
Cancel = True
Else
For i = 2 To 6
Me("textbox" & i) = Cells(x.Row, i)
Next i
End If
End Sub
JB
On 12 juin, 14:15, JulieH wrote:Bonjour et merci à nouveau,
C'est parfait comme d'habitude.
Question annexe : peut-on détecter sur validation de la TextBox1 si on
a déjà saisi des données pour cet animal. Le problème est qu'il faut
vérifier de la colonne B à F (dans ton exemple) car il n'y a pas
toujours d'informations en B.
JulieBonjour,
Private Sub TextBox1_BeforeUpdate(ByVal Cancel As
MSForms.ReturnBoolean)
Set x = [A:A].Find(what:=Me.TextBox1, lookat:=xlWhole)
If x Is Nothing Then
MsgBox "inconnu"
Cancel = True
End If
End Sub
http://cjoint.com/?gmnCdBXWKZ
JB
On 12 juin, 13:12, JulieH wrote:Bonjour,
Le code suivant fourni par JB me permet de faire exactement ce que je
souhaite, à savoir : rechercher dans une "base" la valeur de la TextBox1
et recopier les données des différentes TextBox dans les cellules de droite.
Private Sub B_ok_Click()
Application.ScreenUpdating = False
Set x = [Feuil1].[A:A].Find(what:=Me.TextBox1, lookat:=xlWhole)
y = Me.TextBox1.Value
If Not x Is Nothing Then
For i = 2 To 5
If IsNumeric(Me("textbox" & i)) Then
Cells(x.Row, i + 2) = CDbl(Me("textbox" & i))
Else
Cells(x.Row, i + 2) = Me("textbox" & i)
End If
Me("textbox" & i) = ""
Next i
Me.TextBox1 = ""
Else
MsgBox "L'animal dont le numéro de tatouage est " & y & vbNewLine
& " n'existe pas dans l'élevage."
End If
Me.TextBox1.SetFocus
End Sub
Je voudrais savoir le plus tôt possible (dès la validation de la
TextBox1) si l'animal est présent dans la base. Or dans la Macro, il
faut attendre la validation finale, c'est à dire après la saisie dans
les TextBox.
J'ai essayé un certain nombre de choses dont "Is x is nothing", je n'y
arrive pas.
Si quelqu'un peut me donner un petit coup de main, merci d'avance.
Julie.- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -
Impeccable pour les "données déjà saisies".
En revanche, j'ai toujours le problème du focus : Dans mon fichier, le
numéro saisi s'efface bien, mais la TextBox1 n'a pas la main, le
Userform non plus semble-t-il.
Pourtant cela fonctionne dans ton fichier joint. Y-a-t-il une propriét é
particulière que je ne sais pas utiliser ?
JuliePrivate Sub TextBox1_BeforeUpdate(ByVal Cancel As
MSForms.ReturnBoolean)
If Me.TextBox1 <> "" Then
Set x = [A:A].Find(what:=Me.TextBox1, lookat:=xlWhole)
If x Is Nothing Then
MsgBox "inconnu"
Cancel = True
Else
If Application.CountA(Cells(x.Row, 2).Resize(1, 5)) > 0 Then
MsgBox "Données déjà saisies!"
Me.TextBox1 = ""
Cancel = True
End If
End If
End If
End Sub
http://cjoint.com/?gmpUXfJG7D
JB
On 12 juin, 15:31, JulieH wrote:Ce que tu proposes est vraiment très intéressant mais j'hésite u n peu à
le mettre en place. J'avais plutôt imaginé une MsgBox qui m'indique
qu'il y a déjà des valeurs saisies. Est-ce possible facilement ?
Si je reviens à la première question (gestion du numéro qui n'ex iste
pas), j'ai essayé de mettre en application. Tout se passe bien mais je
n'arrive pas à effacer les données de la TextBox1 et lui rendre le focus.
Me.TextBox1 = ""
Me.TextBox1.SetFocus
Ne fonctionnent pas dans ma Macro.
JulieOn affiche les infos du tableau dans le formulaire??
Private Sub TextBox1_BeforeUpdate(ByVal Cancel As
MSForms.ReturnBoolean)
Set x = [A:A].Find(what:=Me.TextBox1, lookat:=xlWhole)
If x Is Nothing Then
MsgBox "inconnu"
Cancel = True
Else
For i = 2 To 6
Me("textbox" & i) = Cells(x.Row, i)
Next i
End If
End Sub
JB
On 12 juin, 14:15, JulieH wrote:Bonjour et merci à nouveau,
C'est parfait comme d'habitude.
Question annexe : peut-on détecter sur validation de la Te xtBox1 si on
a déjà saisi des données pour cet animal. Le problème est qu 'il faut
vérifier de la colonne B à F (dans ton exemple) car il n'y a pas
toujours d'informations en B.
JulieBonjour,
Private Sub TextBox1_BeforeUpdate(ByVal Cancel As
MSForms.ReturnBoolean)
Set x = [A:A].Find(what:=Me.TextBox1, lookat:=xlWhole)
If x Is Nothing Then
MsgBox "inconnu"
Cancel = True
End If
End Sub
http://cjoint.com/?gmnCdBXWKZ
JB
On 12 juin, 13:12, JulieH wrote:Bonjour,
Le code suivant fourni par JB me permet de faire exactemen t ce que je
souhaite, à savoir : rechercher dans une "base" la valeur de la TextBox1
et recopier les données des différentes TextBox dans les cellu les de droite.
Private Sub B_ok_Click()
Application.ScreenUpdating = False
Set x = [Feuil1].[A:A].Find(what:=Me.TextBox1, lookat:=x lWhole)
y = Me.TextBox1.Value
If Not x Is Nothing Then
For i = 2 To 5
If IsNumeric(Me("textbox" & i)) Then
Cells(x.Row, i + 2) = CDbl(Me("textbox" & i))
Else
Cells(x.Row, i + 2) = Me("textbox" & i)
End If
Me("textbox" & i) = ""
Next i
Me.TextBox1 = ""
Else
MsgBox "L'animal dont le numéro de tatouage est " & y & vb NewLine
& " n'existe pas dans l'élevage."
End If
Me.TextBox1.SetFocus
End Sub
Je voudrais savoir le plus tôt possible (dès la valida tion de la
TextBox1) si l'animal est présent dans la base. Or dans la Macro , il
faut attendre la validation finale, c'est à dire après la sais ie dans
les TextBox.
J'ai essayé un certain nombre de choses dont "Is x is no thing", je n'y
arrive pas.
Si quelqu'un peut me donner un petit coup de main, merci d'avance.
Julie.- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -- Masquer le texte de s messages précédents -
- Afficher le texte des messages précédents -
Impeccable pour les "données déjà saisies".
En revanche, j'ai toujours le problème du focus : Dans mon fichier, le
numéro saisi s'efface bien, mais la TextBox1 n'a pas la main, le
Userform non plus semble-t-il.
Pourtant cela fonctionne dans ton fichier joint. Y-a-t-il une propriét é
particulière que je ne sais pas utiliser ?
Julie
Private Sub TextBox1_BeforeUpdate(ByVal Cancel As
MSForms.ReturnBoolean)
If Me.TextBox1 <> "" Then
Set x = [A:A].Find(what:=Me.TextBox1, lookat:=xlWhole)
If x Is Nothing Then
MsgBox "inconnu"
Cancel = True
Else
If Application.CountA(Cells(x.Row, 2).Resize(1, 5)) > 0 Then
MsgBox "Données déjà saisies!"
Me.TextBox1 = ""
Cancel = True
End If
End If
End If
End Sub
http://cjoint.com/?gmpUXfJG7D
JB
On 12 juin, 15:31, JulieH <jul...@discussions.microsoft.com> wrote:
Ce que tu proposes est vraiment très intéressant mais j'hésite u n peu à
le mettre en place. J'avais plutôt imaginé une MsgBox qui m'indique
qu'il y a déjà des valeurs saisies. Est-ce possible facilement ?
Si je reviens à la première question (gestion du numéro qui n'ex iste
pas), j'ai essayé de mettre en application. Tout se passe bien mais je
n'arrive pas à effacer les données de la TextBox1 et lui rendre le focus.
Me.TextBox1 = ""
Me.TextBox1.SetFocus
Ne fonctionnent pas dans ma Macro.
Julie
On affiche les infos du tableau dans le formulaire??
Private Sub TextBox1_BeforeUpdate(ByVal Cancel As
MSForms.ReturnBoolean)
Set x = [A:A].Find(what:=Me.TextBox1, lookat:=xlWhole)
If x Is Nothing Then
MsgBox "inconnu"
Cancel = True
Else
For i = 2 To 6
Me("textbox" & i) = Cells(x.Row, i)
Next i
End If
End Sub
JB
On 12 juin, 14:15, JulieH <jul...@discussions.microsoft.com> wrote:
Bonjour et merci à nouveau,
C'est parfait comme d'habitude.
Question annexe : peut-on détecter sur validation de la Te xtBox1 si on
a déjà saisi des données pour cet animal. Le problème est qu 'il faut
vérifier de la colonne B à F (dans ton exemple) car il n'y a pas
toujours d'informations en B.
Julie
Bonjour,
Private Sub TextBox1_BeforeUpdate(ByVal Cancel As
MSForms.ReturnBoolean)
Set x = [A:A].Find(what:=Me.TextBox1, lookat:=xlWhole)
If x Is Nothing Then
MsgBox "inconnu"
Cancel = True
End If
End Sub
http://cjoint.com/?gmnCdBXWKZ
JB
On 12 juin, 13:12, JulieH <jul...@discussions.microsoft.com> wrote:
Bonjour,
Le code suivant fourni par JB me permet de faire exactemen t ce que je
souhaite, à savoir : rechercher dans une "base" la valeur de la TextBox1
et recopier les données des différentes TextBox dans les cellu les de droite.
Private Sub B_ok_Click()
Application.ScreenUpdating = False
Set x = [Feuil1].[A:A].Find(what:=Me.TextBox1, lookat:=x lWhole)
y = Me.TextBox1.Value
If Not x Is Nothing Then
For i = 2 To 5
If IsNumeric(Me("textbox" & i)) Then
Cells(x.Row, i + 2) = CDbl(Me("textbox" & i))
Else
Cells(x.Row, i + 2) = Me("textbox" & i)
End If
Me("textbox" & i) = ""
Next i
Me.TextBox1 = ""
Else
MsgBox "L'animal dont le numéro de tatouage est " & y & vb NewLine
& " n'existe pas dans l'élevage."
End If
Me.TextBox1.SetFocus
End Sub
Je voudrais savoir le plus tôt possible (dès la valida tion de la
TextBox1) si l'animal est présent dans la base. Or dans la Macro , il
faut attendre la validation finale, c'est à dire après la sais ie dans
les TextBox.
J'ai essayé un certain nombre de choses dont "Is x is no thing", je n'y
arrive pas.
Si quelqu'un peut me donner un petit coup de main, merci d'avance.
Julie.- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -- Masquer le texte de s messages précédents -
- Afficher le texte des messages précédents -
Impeccable pour les "données déjà saisies".
En revanche, j'ai toujours le problème du focus : Dans mon fichier, le
numéro saisi s'efface bien, mais la TextBox1 n'a pas la main, le
Userform non plus semble-t-il.
Pourtant cela fonctionne dans ton fichier joint. Y-a-t-il une propriét é
particulière que je ne sais pas utiliser ?
JuliePrivate Sub TextBox1_BeforeUpdate(ByVal Cancel As
MSForms.ReturnBoolean)
If Me.TextBox1 <> "" Then
Set x = [A:A].Find(what:=Me.TextBox1, lookat:=xlWhole)
If x Is Nothing Then
MsgBox "inconnu"
Cancel = True
Else
If Application.CountA(Cells(x.Row, 2).Resize(1, 5)) > 0 Then
MsgBox "Données déjà saisies!"
Me.TextBox1 = ""
Cancel = True
End If
End If
End If
End Sub
http://cjoint.com/?gmpUXfJG7D
JB
On 12 juin, 15:31, JulieH wrote:Ce que tu proposes est vraiment très intéressant mais j'hésite u n peu à
le mettre en place. J'avais plutôt imaginé une MsgBox qui m'indique
qu'il y a déjà des valeurs saisies. Est-ce possible facilement ?
Si je reviens à la première question (gestion du numéro qui n'ex iste
pas), j'ai essayé de mettre en application. Tout se passe bien mais je
n'arrive pas à effacer les données de la TextBox1 et lui rendre le focus.
Me.TextBox1 = ""
Me.TextBox1.SetFocus
Ne fonctionnent pas dans ma Macro.
JulieOn affiche les infos du tableau dans le formulaire??
Private Sub TextBox1_BeforeUpdate(ByVal Cancel As
MSForms.ReturnBoolean)
Set x = [A:A].Find(what:=Me.TextBox1, lookat:=xlWhole)
If x Is Nothing Then
MsgBox "inconnu"
Cancel = True
Else
For i = 2 To 6
Me("textbox" & i) = Cells(x.Row, i)
Next i
End If
End Sub
JB
On 12 juin, 14:15, JulieH wrote:Bonjour et merci à nouveau,
C'est parfait comme d'habitude.
Question annexe : peut-on détecter sur validation de la Te xtBox1 si on
a déjà saisi des données pour cet animal. Le problème est qu 'il faut
vérifier de la colonne B à F (dans ton exemple) car il n'y a pas
toujours d'informations en B.
JulieBonjour,
Private Sub TextBox1_BeforeUpdate(ByVal Cancel As
MSForms.ReturnBoolean)
Set x = [A:A].Find(what:=Me.TextBox1, lookat:=xlWhole)
If x Is Nothing Then
MsgBox "inconnu"
Cancel = True
End If
End Sub
http://cjoint.com/?gmnCdBXWKZ
JB
On 12 juin, 13:12, JulieH wrote:Bonjour,
Le code suivant fourni par JB me permet de faire exactemen t ce que je
souhaite, à savoir : rechercher dans une "base" la valeur de la TextBox1
et recopier les données des différentes TextBox dans les cellu les de droite.
Private Sub B_ok_Click()
Application.ScreenUpdating = False
Set x = [Feuil1].[A:A].Find(what:=Me.TextBox1, lookat:=x lWhole)
y = Me.TextBox1.Value
If Not x Is Nothing Then
For i = 2 To 5
If IsNumeric(Me("textbox" & i)) Then
Cells(x.Row, i + 2) = CDbl(Me("textbox" & i))
Else
Cells(x.Row, i + 2) = Me("textbox" & i)
End If
Me("textbox" & i) = ""
Next i
Me.TextBox1 = ""
Else
MsgBox "L'animal dont le numéro de tatouage est " & y & vb NewLine
& " n'existe pas dans l'élevage."
End If
Me.TextBox1.SetFocus
End Sub
Je voudrais savoir le plus tôt possible (dès la valida tion de la
TextBox1) si l'animal est présent dans la base. Or dans la Macro , il
faut attendre la validation finale, c'est à dire après la sais ie dans
les TextBox.
J'ai essayé un certain nombre de choses dont "Is x is no thing", je n'y
arrive pas.
Si quelqu'un peut me donner un petit coup de main, merci d'avance.
Julie.- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -- Masquer le texte de s messages précédents -
- Afficher le texte des messages précédents -
Dans l'exemple joint, le formulaire est Modal.
Le curseur est bien positionné sur textbox1
http://cjoint.com/?gmth7xOwF0.
JB
On 12 juin, 17:18, JulieH wrote:Impeccable pour les "données déjà saisies".
En revanche, j'ai toujours le problème du focus : Dans mon fichier, le
numéro saisi s'efface bien, mais la TextBox1 n'a pas la main, le
Userform non plus semble-t-il.
Pourtant cela fonctionne dans ton fichier joint. Y-a-t-il une propriété
particulière que je ne sais pas utiliser ?
JuliePrivate Sub TextBox1_BeforeUpdate(ByVal Cancel As
MSForms.ReturnBoolean)
If Me.TextBox1 <> "" Then
Set x = [A:A].Find(what:=Me.TextBox1, lookat:=xlWhole)
If x Is Nothing Then
MsgBox "inconnu"
Cancel = True
Else
If Application.CountA(Cells(x.Row, 2).Resize(1, 5)) > 0 Then
MsgBox "Données déjà saisies!"
Me.TextBox1 = ""
Cancel = True
End If
End If
End If
End Sub
http://cjoint.com/?gmpUXfJG7D
JB
On 12 juin, 15:31, JulieH wrote:Ce que tu proposes est vraiment très intéressant mais j'hésite un peu à
le mettre en place. J'avais plutôt imaginé une MsgBox qui m'indique
qu'il y a déjà des valeurs saisies. Est-ce possible facilement ?
Si je reviens à la première question (gestion du numéro qui n'existe
pas), j'ai essayé de mettre en application. Tout se passe bien mais je
n'arrive pas à effacer les données de la TextBox1 et lui rendre le focus.
Me.TextBox1 = ""
Me.TextBox1.SetFocus
Ne fonctionnent pas dans ma Macro.
JulieOn affiche les infos du tableau dans le formulaire??
Private Sub TextBox1_BeforeUpdate(ByVal Cancel As
MSForms.ReturnBoolean)
Set x = [A:A].Find(what:=Me.TextBox1, lookat:=xlWhole)
If x Is Nothing Then
MsgBox "inconnu"
Cancel = True
Else
For i = 2 To 6
Me("textbox" & i) = Cells(x.Row, i)
Next i
End If
End Sub
JB
On 12 juin, 14:15, JulieH wrote:Bonjour et merci à nouveau,
C'est parfait comme d'habitude.
Question annexe : peut-on détecter sur validation de la TextBox1 si on
a déjà saisi des données pour cet animal. Le problème est qu'il faut
vérifier de la colonne B à F (dans ton exemple) car il n'y a pas
toujours d'informations en B.
JulieBonjour,
Private Sub TextBox1_BeforeUpdate(ByVal Cancel As
MSForms.ReturnBoolean)
Set x = [A:A].Find(what:=Me.TextBox1, lookat:=xlWhole)
If x Is Nothing Then
MsgBox "inconnu"
Cancel = True
End If
End Sub
http://cjoint.com/?gmnCdBXWKZ
JB
On 12 juin, 13:12, JulieH wrote:Bonjour,
Le code suivant fourni par JB me permet de faire exactement ce que je
souhaite, à savoir : rechercher dans une "base" la valeur de la TextBox1
et recopier les données des différentes TextBox dans les cellules de droite.
Private Sub B_ok_Click()
Application.ScreenUpdating = False
Set x = [Feuil1].[A:A].Find(what:=Me.TextBox1, lookat:=xlWhole)
y = Me.TextBox1.Value
If Not x Is Nothing Then
For i = 2 To 5
If IsNumeric(Me("textbox" & i)) Then
Cells(x.Row, i + 2) = CDbl(Me("textbox" & i))
Else
Cells(x.Row, i + 2) = Me("textbox" & i)
End If
Me("textbox" & i) = ""
Next i
Me.TextBox1 = ""
Else
MsgBox "L'animal dont le numéro de tatouage est " & y & vbNewLine
& " n'existe pas dans l'élevage."
End If
Me.TextBox1.SetFocus
End Sub
Je voudrais savoir le plus tôt possible (dès la validation de la
TextBox1) si l'animal est présent dans la base. Or dans la Macro, il
faut attendre la validation finale, c'est à dire après la saisie dans
les TextBox.
J'ai essayé un certain nombre de choses dont "Is x is nothing", je n'y
arrive pas.
Si quelqu'un peut me donner un petit coup de main, merci d'avance.
Julie.- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -
Dans l'exemple joint, le formulaire est Modal.
Le curseur est bien positionné sur textbox1
http://cjoint.com/?gmth7xOwF0.
JB
On 12 juin, 17:18, JulieH <jul...@discussions.microsoft.com> wrote:
Impeccable pour les "données déjà saisies".
En revanche, j'ai toujours le problème du focus : Dans mon fichier, le
numéro saisi s'efface bien, mais la TextBox1 n'a pas la main, le
Userform non plus semble-t-il.
Pourtant cela fonctionne dans ton fichier joint. Y-a-t-il une propriété
particulière que je ne sais pas utiliser ?
Julie
Private Sub TextBox1_BeforeUpdate(ByVal Cancel As
MSForms.ReturnBoolean)
If Me.TextBox1 <> "" Then
Set x = [A:A].Find(what:=Me.TextBox1, lookat:=xlWhole)
If x Is Nothing Then
MsgBox "inconnu"
Cancel = True
Else
If Application.CountA(Cells(x.Row, 2).Resize(1, 5)) > 0 Then
MsgBox "Données déjà saisies!"
Me.TextBox1 = ""
Cancel = True
End If
End If
End If
End Sub
http://cjoint.com/?gmpUXfJG7D
JB
On 12 juin, 15:31, JulieH <jul...@discussions.microsoft.com> wrote:
Ce que tu proposes est vraiment très intéressant mais j'hésite un peu à
le mettre en place. J'avais plutôt imaginé une MsgBox qui m'indique
qu'il y a déjà des valeurs saisies. Est-ce possible facilement ?
Si je reviens à la première question (gestion du numéro qui n'existe
pas), j'ai essayé de mettre en application. Tout se passe bien mais je
n'arrive pas à effacer les données de la TextBox1 et lui rendre le focus.
Me.TextBox1 = ""
Me.TextBox1.SetFocus
Ne fonctionnent pas dans ma Macro.
Julie
On affiche les infos du tableau dans le formulaire??
Private Sub TextBox1_BeforeUpdate(ByVal Cancel As
MSForms.ReturnBoolean)
Set x = [A:A].Find(what:=Me.TextBox1, lookat:=xlWhole)
If x Is Nothing Then
MsgBox "inconnu"
Cancel = True
Else
For i = 2 To 6
Me("textbox" & i) = Cells(x.Row, i)
Next i
End If
End Sub
JB
On 12 juin, 14:15, JulieH <jul...@discussions.microsoft.com> wrote:
Bonjour et merci à nouveau,
C'est parfait comme d'habitude.
Question annexe : peut-on détecter sur validation de la TextBox1 si on
a déjà saisi des données pour cet animal. Le problème est qu'il faut
vérifier de la colonne B à F (dans ton exemple) car il n'y a pas
toujours d'informations en B.
Julie
Bonjour,
Private Sub TextBox1_BeforeUpdate(ByVal Cancel As
MSForms.ReturnBoolean)
Set x = [A:A].Find(what:=Me.TextBox1, lookat:=xlWhole)
If x Is Nothing Then
MsgBox "inconnu"
Cancel = True
End If
End Sub
http://cjoint.com/?gmnCdBXWKZ
JB
On 12 juin, 13:12, JulieH <jul...@discussions.microsoft.com> wrote:
Bonjour,
Le code suivant fourni par JB me permet de faire exactement ce que je
souhaite, à savoir : rechercher dans une "base" la valeur de la TextBox1
et recopier les données des différentes TextBox dans les cellules de droite.
Private Sub B_ok_Click()
Application.ScreenUpdating = False
Set x = [Feuil1].[A:A].Find(what:=Me.TextBox1, lookat:=xlWhole)
y = Me.TextBox1.Value
If Not x Is Nothing Then
For i = 2 To 5
If IsNumeric(Me("textbox" & i)) Then
Cells(x.Row, i + 2) = CDbl(Me("textbox" & i))
Else
Cells(x.Row, i + 2) = Me("textbox" & i)
End If
Me("textbox" & i) = ""
Next i
Me.TextBox1 = ""
Else
MsgBox "L'animal dont le numéro de tatouage est " & y & vbNewLine
& " n'existe pas dans l'élevage."
End If
Me.TextBox1.SetFocus
End Sub
Je voudrais savoir le plus tôt possible (dès la validation de la
TextBox1) si l'animal est présent dans la base. Or dans la Macro, il
faut attendre la validation finale, c'est à dire après la saisie dans
les TextBox.
J'ai essayé un certain nombre de choses dont "Is x is nothing", je n'y
arrive pas.
Si quelqu'un peut me donner un petit coup de main, merci d'avance.
Julie.- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -
Dans l'exemple joint, le formulaire est Modal.
Le curseur est bien positionné sur textbox1
http://cjoint.com/?gmth7xOwF0.
JB
On 12 juin, 17:18, JulieH wrote:Impeccable pour les "données déjà saisies".
En revanche, j'ai toujours le problème du focus : Dans mon fichier, le
numéro saisi s'efface bien, mais la TextBox1 n'a pas la main, le
Userform non plus semble-t-il.
Pourtant cela fonctionne dans ton fichier joint. Y-a-t-il une propriété
particulière que je ne sais pas utiliser ?
JuliePrivate Sub TextBox1_BeforeUpdate(ByVal Cancel As
MSForms.ReturnBoolean)
If Me.TextBox1 <> "" Then
Set x = [A:A].Find(what:=Me.TextBox1, lookat:=xlWhole)
If x Is Nothing Then
MsgBox "inconnu"
Cancel = True
Else
If Application.CountA(Cells(x.Row, 2).Resize(1, 5)) > 0 Then
MsgBox "Données déjà saisies!"
Me.TextBox1 = ""
Cancel = True
End If
End If
End If
End Sub
http://cjoint.com/?gmpUXfJG7D
JB
On 12 juin, 15:31, JulieH wrote:Ce que tu proposes est vraiment très intéressant mais j'hésite un peu à
le mettre en place. J'avais plutôt imaginé une MsgBox qui m'indique
qu'il y a déjà des valeurs saisies. Est-ce possible facilement ?
Si je reviens à la première question (gestion du numéro qui n'existe
pas), j'ai essayé de mettre en application. Tout se passe bien mais je
n'arrive pas à effacer les données de la TextBox1 et lui rendre le focus.
Me.TextBox1 = ""
Me.TextBox1.SetFocus
Ne fonctionnent pas dans ma Macro.
JulieOn affiche les infos du tableau dans le formulaire??
Private Sub TextBox1_BeforeUpdate(ByVal Cancel As
MSForms.ReturnBoolean)
Set x = [A:A].Find(what:=Me.TextBox1, lookat:=xlWhole)
If x Is Nothing Then
MsgBox "inconnu"
Cancel = True
Else
For i = 2 To 6
Me("textbox" & i) = Cells(x.Row, i)
Next i
End If
End Sub
JB
On 12 juin, 14:15, JulieH wrote:Bonjour et merci à nouveau,
C'est parfait comme d'habitude.
Question annexe : peut-on détecter sur validation de la TextBox1 si on
a déjà saisi des données pour cet animal. Le problème est qu'il faut
vérifier de la colonne B à F (dans ton exemple) car il n'y a pas
toujours d'informations en B.
JulieBonjour,
Private Sub TextBox1_BeforeUpdate(ByVal Cancel As
MSForms.ReturnBoolean)
Set x = [A:A].Find(what:=Me.TextBox1, lookat:=xlWhole)
If x Is Nothing Then
MsgBox "inconnu"
Cancel = True
End If
End Sub
http://cjoint.com/?gmnCdBXWKZ
JB
On 12 juin, 13:12, JulieH wrote:Bonjour,
Le code suivant fourni par JB me permet de faire exactement ce que je
souhaite, à savoir : rechercher dans une "base" la valeur de la TextBox1
et recopier les données des différentes TextBox dans les cellules de droite.
Private Sub B_ok_Click()
Application.ScreenUpdating = False
Set x = [Feuil1].[A:A].Find(what:=Me.TextBox1, lookat:=xlWhole)
y = Me.TextBox1.Value
If Not x Is Nothing Then
For i = 2 To 5
If IsNumeric(Me("textbox" & i)) Then
Cells(x.Row, i + 2) = CDbl(Me("textbox" & i))
Else
Cells(x.Row, i + 2) = Me("textbox" & i)
End If
Me("textbox" & i) = ""
Next i
Me.TextBox1 = ""
Else
MsgBox "L'animal dont le numéro de tatouage est " & y & vbNewLine
& " n'existe pas dans l'élevage."
End If
Me.TextBox1.SetFocus
End Sub
Je voudrais savoir le plus tôt possible (dès la validation de la
TextBox1) si l'animal est présent dans la base. Or dans la Macro, il
faut attendre la validation finale, c'est à dire après la saisie dans
les TextBox.
J'ai essayé un certain nombre de choses dont "Is x is nothing", je n'y
arrive pas.
Si quelqu'un peut me donner un petit coup de main, merci d'avance.
Julie.- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -