![]() |
|
Forum
|
|
|
#1 (permalink) |
|
XLDnaute Junior
Date d'inscription: octobre 2007
Localisation: DIJON
Version Excel : Excel 2003 (PC)
Messages: 76
|
Bonsoir le forum.
je fais appel à vos lumières, car, malgré moult recherches, je n'ai pas trouvé. Sur l'UserForm1, entre autres : Un ComboBoxLiaison (liste de données sur 6 caractères du genre L21654) Un TextBoxSaisieC5 qui reçoit des données de 28 caractères via lecteur codes à barres. Un TextBoxPlomb qui reçoit des données de 11 caractères via lecteur codes à barres) Une ListBoxLiaisonsAutorisées alimentée par un champ calculé de ma feuille en fonction de l'entrée dans TextBoxSaisieC5, de 23 caractères dont les 6 premiers sont des numéros de liaison du type L21654. Une saisie dans TextBoxSaisieC5 place actuellement le curseur dans TextBoxPlomb et vice versa, pour une saisie continue. Je souhaite vérifier que la valeur choisie dans ComboBoxLiaison correspond bien aux 6 premiers caractères de l'un des items de ListBoxLiaisonsAutorisées renvoyée par la saisie dans TextBoxSaisieC5 et dans le cas contraire, jouer un son Wave, effacer la valeur dans TextBoxSaisieC5, le colorer en rouge et lui redonner le focus. Si, en plus, en cas de correspondance, l'on pouvait soit mettre l'item correspondant en surbrillance, soit modifier la couleur de sa police, ce serait la cerise sur le gâteau ! Je joins les codes de TextBox SaisieC5 ci-dessous qui fonctionnent : Code:
Private Sub TextBoxSaisieC5_BeforeUpdate(ByVal Cancel As MSForms.ReturnBoolean)
If Len(TextBoxSaisieC5.Value) <> 28 Then
TextBoxSaisieC5.BackColor = RGB(255, 0, 0) 'rouge
ErreurDesti 'joue un son Wave
MsgBox "Saisie non valide." & Chr(13) & "double cliquez dans la zone saisie et resaisissez un code barre valide" & Chr(13) & "Appuyez sur ESC pour annuler", vbCritical, "ERREUR !"
Cancel = True
End If
Me.TextBoxSaisieC5.BackColor = &HC0FFFF 'normal
Me.TextBoxSaisieC5.SelStart = 0
Me.TextBoxSaisieC5.SelLength = Len(Me.TextBoxSaisieC5)
End Sub
Private Sub TextBoxSaisieC5_Exit(ByVal Cancel As MSForms.ReturnBoolean)
Dim Cp
Cp = Mid(TextBoxSaisieC5, 4, 5)
TextBoxIATA = Application.VLookup(CLng(Cp), Sheets("AGENCE").Range("a2:b100"), 2, 0)
With Sheets("BaseLR")
.Activate
.Range("BO8") = Me.TextBoxIATA
End With
Dim LR
LR = Sheets("BaseLR").Range("bs9:bs20")
Me.ListBox1.List = LR
'Me.TextBoxSaisiePlomb = "" '###########
End Sub
Private Sub TextBoxSaisieC5_MouseDown(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
If Len(TextBoxCaisse.Value) < 1 Then
TextBoxCaisse.BackColor = RGB(255, 0, 0) 'rouge
ErreurDesti 'joue un son Wave
MsgBox "Saisie non valide" & Chr(13) & "Cliquez dans la zone Caisse et entrez un numéro de caisse valide.", vbCritical, "ERREUR !"
End If
Me.TextBoxCaisse.BackColor = &HC0FFFF
End Sub
Je sais cette question difficile et, en vous priant de m'excuser pour la longueur du post, je vous remercie de l'avoir lue jusqu'au bout. Bien cordialement |
|
|
|
| ANNONCES | |||
|
|
|
|
#2 (permalink) | |
|
XLDnaute Barbatruc
Date d'inscription: juin 2007
Localisation: Riedisheim (Mulhouse)
Version Excel : Excel 2003 (PC)
Messages: 2 812
|
Bonjour,
Citation:
Sans fichier exemple, c'est difficile d'imaginer le déroulement d'un USF comme celui-ci lors de son execution.
__________________
@+ skoobi On en apprend tous les jours Filtrer un tableau, c'est par ici: Après la version 3, voici la version 4 ![]() Trier un tableau, c'est par là: http://www.excel-downloads.com/forum...tml#post558394 Aidez ce forum, devenez supporter: http://www.excel-downloads.com/forum...tml#post442476 |
|
|
|
|
|
|
#3 (permalink) |
|
XLDnaute Junior
Date d'inscription: octobre 2007
Localisation: DIJON
Version Excel : Excel 2003 (PC)
Messages: 76
|
Bonsoir, skooby, le forum.
Je travaille à alléger mon fichier, sans le dénaturer, et reviendrai alors le soumettre à votre sagacité. ![]() Mais probablement pas avant samedi. Merci en tous cas pour ton intérêt. Bien cordialement, Patrick. Dernière modification par Victor21 ; 13/02/2008 à 22h34. Motif: Fichier allégé joint |
|
|
|
|
|
#4 (permalink) |
|
XLDnaute Junior
Date d'inscription: octobre 2007
Localisation: DIJON
Version Excel : Excel 2003 (PC)
Messages: 76
|
Bonsoir, skooby, le forum.
J'espère ne pas contrevenir aux règles de ce forum en repostant. Je re-poste parce qu'après modification du précédent (l'ajout du fichier joint), je m'aperçois qu'il ne s'affiche pas en non lu sur le forum. Merci de m'excuser et me le faire savoir si c'était le cas. Bien cordialement, |
|
|
|
| ANNONCES | |
![]() |
| Liens sociaux |
| Outils de la discussion | |
|
|
Discussions similaires
|
||||
| Discussion | Auteur | Forum | Réponses | Dernier message |
| calcul auto avec controle coherence - VBA | VBA_DEAD | Forum Excel | 10 | 26/04/2007 23h38 |
| doublons dans listbox suite choix combobox | munity | Forum Excel | 10 | 04/11/2006 18h36 |
| supprimer des items dans un combobox | oriop | Forum Excel | 1 | 11/10/2005 17h03 |
| ListBox et Items sélectionnés | Kim | Forum Excel Downloads - Archives | 0 | 12/12/2003 20h08 |
| recupérer des items listbox | dood | Forum Excel Downloads - Archives | 2 | 04/06/2003 13h59 |