Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Test avant traitement

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

gianluca

XLDnaute Occasionnel
Hello le Forum

Je rencontre un souci de tests avant de lancer un traitement. et je n'en sors pas....

J'ai deux listBox
l'utilisateur doit séléctionner un item dans chacune des deux LB (1 Eleve, 1 Mois)
Ces deux selections s'affichent dans deux TextBox.
Ces deux valeurs doivent permettrent d'aller chercher les infos de l'item Eleve en fonction de l'item mois

Et là ou je coince c'est pour tester que mes deux TExtBox soient bien remplies avant de lancer le traitement

J'ai écris cette procédure mais cela ne fonctionne pas

Private Sub TBEleve_Change()
Dim Rep As Integer
Dim Cell As Range

If TBMois.Value = "" Then
Rep = MsgBox("Sélectionnez au préalable un mois!", vbCritical, _
"Attention")
LBEleves.ListIndex = -1
Exit Sub
End If
With Sheets(TBMois.Value)
For Each Cell In .Range("A3:A" & .Range("A65536").End(xlUp).Row)
If Cell.Value = TBEleve.Value Then
TBMatin.Value = Cell.Offset(0, 2).Value
TBAvantMidi.Value = Cell.Offset(0, 3).Value
TBApresMidi.Value = Cell.Offset(0, 4).Value
TBSoir.Value = Cell.Offset(0, 5).Value
Exit For
End If
Next Cell
End With
End Sub

De plus j'ai un autre souci : Si je selectionne un éléve et pas le mois, je sors de ma proc pour aller sélectionner un mois. Mais alors je ne peux plus revenir selectionner l'elève initial sans etre obligé d'en selectionner un autre... (Oui bon, la c'est pas clair 😕 )

Bref c'est la galère.... et je rame. 🙂

Merci à vous si vous pouviez éclairer un peu ma lanterne
Bonne journée

Gianluca
 
Re : Test avant traitement

Bonjour Gianluca, bonjour le forum,

Je pense que tu utilises une UserForm. Si c'est le cas, pourquoi ne pas faire le test au lancement du traitement. Certainement par le bouton "Valider" ou "Ok" ou autre...

par un code de ce genre :

Code:
Private Sub CommandButton1_Click()
 
If TBEleve.Value = "" Then
    MsgBox "Vous devez reseigner ce champ !"
    TBEleve.SetFocus
    Exit Sub
End If
 
If TBMois.Value = "" Then
    MsgBox "Vous devez reseigner ce champ !"
    TBMois.SetFocus
    Exit Sub
End If
 
End Sub
 
Re : Test avant traitement

Bonjour Robert, Re le forum...

Merci de ta réponse Robert. Effectivement je fais ce test avant de lancer le traitement. Ca c'est OK. et je m'aperçois que je n'ai pas été clair... 🙂

en fait cet USF est prévu pour apporter éventuellemnt des modifications a des données déjà enregistrées.
et mon souci c'est de récupérer ces données, les afficher dans différents TB, et si l'utilisateur les modifie, enregistrer ces modifs en écrasant les anciennes données.
Ca coince pour récupérer les données enregistrées et les afficher.
Ce que je veux faire, c'est sélectionner un éléve dans LBEleves, puis un mois dans LBMois, et sur On_Change des TBMois ou Eleve, aller chercher les anciennes données pour les afficher avant modifications.
Car si TBEleve Ou TBmois sont vides, ma recherche ne fonctionne pas.
En fait je ne trouve pas la logique pour tester le remplissage des 2 TB avant de lancer la recherche des anciennes données....

Ouf... 🙂
 
Re : Test avant traitement

Re everybody....


Ca y est j'ai trouvé.... 😛

Il me faut lancer le traitement sur les deux on_Change des TB en testant le fait que l'autre ne soit pas vide au préalable...

Merci Robert de t'être penché sur mon Pb

Bonne journée

Gianluca
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
5
Affichages
910
  • Question Question
Microsoft 365 worksheet_change
Réponses
29
Affichages
1 K
Réponses
15
Affichages
784
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…