Sur un Userform, l'usager doit entrer un no de compagnie dans un textbox. Je
voudrais que dès que l'usager sort du textbox qu'Excel recherche dans la
colonne G de la feuille si ce no n'apparait pas déjà. S'il apparait, alors je
voudrais que le nom apparaissant dans la cellule de la colonne H "offset (0,
-1)" s'inscrive automatiquement dans le textbox2...
Voici ou j'en suis:
Private Sub TextBox3_AfterUpdate()
Dim NoErreur As Long
On Error Resume Next
Application.WorksheetFunction.Find (ou encore Match) TextBox3.Value,
[G:G], 0
NoErreur = Err.Number
On Error GoTo 0
If NoErreur = 0 Then
Me.TextBox2.Value = ActiveCell.Offset(0, -1).Text
Cancel = True
End If
End Sub
J'ai aussi essayé avec Textbox exit..... Sauriez-vous ou se trouve mon erreur?
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Hervé
Bonsoir Denys, Regarde si cela te conviens :
Private Sub TextBox3_Exit(ByVal Cancel As MSForms.ReturnBoolean) TextBox2.Text = ChercherN°(ActiveSheet, TextBox3.Text) End Sub
Function ChercherN°(Fe As Worksheet, Valeur) Dim Plage As Range Dim Cel As Range With Fe Set Plage = .Range(.[H1], .[H65536].End(3)) End With Set Cel = Plage.Find(Valeur, , xlValues) If Not Cel Is Nothing Then ChercherN° = Cel.Offset(0, 1).Value Else ChercherN° = "" End If
Set Cel = Nothing Set Plage = Nothing
End Function
Hervé.
"Denys" a écrit dans le message de news:
Bonjour à tous,
Sur un Userform, l'usager doit entrer un no de compagnie dans un textbox. Je voudrais que dès que l'usager sort du textbox qu'Excel recherche dans la colonne G de la feuille si ce no n'apparait pas déjà. S'il apparait, alors je voudrais que le nom apparaissant dans la cellule de la colonne H "offset (0, -1)" s'inscrive automatiquement dans le textbox2...
Voici ou j'en suis:
Private Sub TextBox3_AfterUpdate() Dim NoErreur As Long On Error Resume Next Application.WorksheetFunction.Find (ou encore Match) TextBox3.Value, [G:G], 0 NoErreur = Err.Number On Error GoTo 0 If NoErreur = 0 Then Me.TextBox2.Value = ActiveCell.Offset(0, -1).Text Cancel = True End If End Sub
J'ai aussi essayé avec Textbox exit..... Sauriez-vous ou se trouve mon erreur?
Merci
Denys
Bonsoir Denys,
Regarde si cela te conviens :
Private Sub TextBox3_Exit(ByVal Cancel As MSForms.ReturnBoolean)
TextBox2.Text = ChercherN°(ActiveSheet, TextBox3.Text)
End Sub
Function ChercherN°(Fe As Worksheet, Valeur)
Dim Plage As Range
Dim Cel As Range
With Fe
Set Plage = .Range(.[H1], .[H65536].End(3))
End With
Set Cel = Plage.Find(Valeur, , xlValues)
If Not Cel Is Nothing Then
ChercherN° = Cel.Offset(0, 1).Value
Else
ChercherN° = ""
End If
Set Cel = Nothing
Set Plage = Nothing
End Function
Hervé.
"Denys" <Denys@discussions.microsoft.com> a écrit dans le message de news:
EB1A8A75-6932-4958-AAF6-EFF4B9970F61@microsoft.com...
Bonjour à tous,
Sur un Userform, l'usager doit entrer un no de compagnie dans un textbox.
Je
voudrais que dès que l'usager sort du textbox qu'Excel recherche dans la
colonne G de la feuille si ce no n'apparait pas déjà. S'il apparait, alors
je
voudrais que le nom apparaissant dans la cellule de la colonne H "offset
(0,
-1)" s'inscrive automatiquement dans le textbox2...
Voici ou j'en suis:
Private Sub TextBox3_AfterUpdate()
Dim NoErreur As Long
On Error Resume Next
Application.WorksheetFunction.Find (ou encore Match) TextBox3.Value,
[G:G], 0
NoErreur = Err.Number
On Error GoTo 0
If NoErreur = 0 Then
Me.TextBox2.Value = ActiveCell.Offset(0, -1).Text
Cancel = True
End If
End Sub
J'ai aussi essayé avec Textbox exit..... Sauriez-vous ou se trouve mon
erreur?
Private Sub TextBox3_Exit(ByVal Cancel As MSForms.ReturnBoolean) TextBox2.Text = ChercherN°(ActiveSheet, TextBox3.Text) End Sub
Function ChercherN°(Fe As Worksheet, Valeur) Dim Plage As Range Dim Cel As Range With Fe Set Plage = .Range(.[H1], .[H65536].End(3)) End With Set Cel = Plage.Find(Valeur, , xlValues) If Not Cel Is Nothing Then ChercherN° = Cel.Offset(0, 1).Value Else ChercherN° = "" End If
Set Cel = Nothing Set Plage = Nothing
End Function
Hervé.
"Denys" a écrit dans le message de news:
Bonjour à tous,
Sur un Userform, l'usager doit entrer un no de compagnie dans un textbox. Je voudrais que dès que l'usager sort du textbox qu'Excel recherche dans la colonne G de la feuille si ce no n'apparait pas déjà. S'il apparait, alors je voudrais que le nom apparaissant dans la cellule de la colonne H "offset (0, -1)" s'inscrive automatiquement dans le textbox2...
Voici ou j'en suis:
Private Sub TextBox3_AfterUpdate() Dim NoErreur As Long On Error Resume Next Application.WorksheetFunction.Find (ou encore Match) TextBox3.Value, [G:G], 0 NoErreur = Err.Number On Error GoTo 0 If NoErreur = 0 Then Me.TextBox2.Value = ActiveCell.Offset(0, -1).Text Cancel = True End If End Sub
J'ai aussi essayé avec Textbox exit..... Sauriez-vous ou se trouve mon erreur?
Merci
Denys
michdenis
Bonjour Denys,
Plusieurs événements peuvent être utiliser ...
'--------------------- Private Sub TextBox1_BeforeUpdate(ByVal Cancel As MSForms.ReturnBoolean) Dim Trouve As Range With Worksheets("Feuil1") Set trouve = .Range("G:G").Find(CDbl(Me.TextBox1), , _ xlValues, xlWhole, xlByColumns) End With If Not trouve Is Nothing Then trouve.Offset(0, -1) = trouve Me.TextBox2 = Me.TextBox1 End If
End Sub '-------------------------
Salutations!
"Denys" a écrit dans le message de news: Bonjour à tous,
Sur un Userform, l'usager doit entrer un no de compagnie dans un textbox. Je voudrais que dès que l'usager sort du textbox qu'Excel recherche dans la colonne G de la feuille si ce no n'apparait pas déjà. S'il apparait, alors je voudrais que le nom apparaissant dans la cellule de la colonne H "offset (0, -1)" s'inscrive automatiquement dans le textbox2...
Voici ou j'en suis:
Private Sub TextBox3_AfterUpdate() Dim NoErreur As Long On Error Resume Next Application.WorksheetFunction.Find (ou encore Match) TextBox3.Value, [G:G], 0 NoErreur = Err.Number On Error GoTo 0 If NoErreur = 0 Then Me.TextBox2.Value = ActiveCell.Offset(0, -1).Text Cancel = True End If End Sub
J'ai aussi essayé avec Textbox exit..... Sauriez-vous ou se trouve mon erreur?
Merci
Denys
Bonjour Denys,
Plusieurs événements peuvent être utiliser ...
'---------------------
Private Sub TextBox1_BeforeUpdate(ByVal Cancel As MSForms.ReturnBoolean)
Dim Trouve As Range
With Worksheets("Feuil1")
Set trouve = .Range("G:G").Find(CDbl(Me.TextBox1), , _
xlValues, xlWhole, xlByColumns)
End With
If Not trouve Is Nothing Then
trouve.Offset(0, -1) = trouve
Me.TextBox2 = Me.TextBox1
End If
End Sub
'-------------------------
Salutations!
"Denys" <Denys@discussions.microsoft.com> a écrit dans le message de news: EB1A8A75-6932-4958-AAF6-EFF4B9970F61@microsoft.com...
Bonjour à tous,
Sur un Userform, l'usager doit entrer un no de compagnie dans un textbox. Je
voudrais que dès que l'usager sort du textbox qu'Excel recherche dans la
colonne G de la feuille si ce no n'apparait pas déjà. S'il apparait, alors je
voudrais que le nom apparaissant dans la cellule de la colonne H "offset (0,
-1)" s'inscrive automatiquement dans le textbox2...
Voici ou j'en suis:
Private Sub TextBox3_AfterUpdate()
Dim NoErreur As Long
On Error Resume Next
Application.WorksheetFunction.Find (ou encore Match) TextBox3.Value,
[G:G], 0
NoErreur = Err.Number
On Error GoTo 0
If NoErreur = 0 Then
Me.TextBox2.Value = ActiveCell.Offset(0, -1).Text
Cancel = True
End If
End Sub
J'ai aussi essayé avec Textbox exit..... Sauriez-vous ou se trouve mon erreur?
'--------------------- Private Sub TextBox1_BeforeUpdate(ByVal Cancel As MSForms.ReturnBoolean) Dim Trouve As Range With Worksheets("Feuil1") Set trouve = .Range("G:G").Find(CDbl(Me.TextBox1), , _ xlValues, xlWhole, xlByColumns) End With If Not trouve Is Nothing Then trouve.Offset(0, -1) = trouve Me.TextBox2 = Me.TextBox1 End If
End Sub '-------------------------
Salutations!
"Denys" a écrit dans le message de news: Bonjour à tous,
Sur un Userform, l'usager doit entrer un no de compagnie dans un textbox. Je voudrais que dès que l'usager sort du textbox qu'Excel recherche dans la colonne G de la feuille si ce no n'apparait pas déjà. S'il apparait, alors je voudrais que le nom apparaissant dans la cellule de la colonne H "offset (0, -1)" s'inscrive automatiquement dans le textbox2...
Voici ou j'en suis:
Private Sub TextBox3_AfterUpdate() Dim NoErreur As Long On Error Resume Next Application.WorksheetFunction.Find (ou encore Match) TextBox3.Value, [G:G], 0 NoErreur = Err.Number On Error GoTo 0 If NoErreur = 0 Then Me.TextBox2.Value = ActiveCell.Offset(0, -1).Text Cancel = True End If End Sub
J'ai aussi essayé avec Textbox exit..... Sauriez-vous ou se trouve mon erreur?