gruf
Messages postés29Date d'inscriptionjeudi 18 janvier 2018StatutMembreDernière intervention25 octobre 2018
-
25 janv. 2018 à 18:43
gruf
Messages postés29Date d'inscriptionjeudi 18 janvier 2018StatutMembreDernière intervention25 octobre 2018
-
7 févr. 2018 à 01:40
Bonjour, Merci pour toute l'aide que vous m'aviez donné.
Bon j'ai un userform pour faire des saisie de données comprenant des textbox et des combobox. Parfois certains textbox et combobox se plantent. j"ai plus de 20 textbox et combobox sur mon Userform.
Whismeril
Messages postés19143Date d'inscriptionmardi 11 mars 2003StatutContributeurDernière intervention15 septembre 2024660 25 janv. 2018 à 19:25
Bonsoir
Ma boule de cristal dit que ton code est envouté.
Fait une offrande au dieu du vba.
Ha pardon, tu voulais une réponse sérieuse?
Et bien c’est impossible.
Tu n’as montré aucun code ou poster un fichier d’exemple (sans données confidentielles, sur un hébergeur tierce, cijoint par exemple)
Tu n’as pas dit quelles successions d’actions declenchent le bug
Tu n’as pas décrit le bug ou transcrit un message d’erreur.
gruf
Messages postés29Date d'inscriptionjeudi 18 janvier 2018StatutMembreDernière intervention25 octobre 2018 26 janv. 2018 à 09:57
Bonjour Whismeril merci pour cette intervention. Voilà le code d'une de mes textbox qui récupère l'âge de l'utilisateur. son bug est qu'une fois la macro de contrôle d'âge exécuté elle ne reprend plus le curseur et parfois il est même impossible de remettre le curseur sur ce textbox car au Click de la souri rien ne se passe
Private Sub Txtdatebornphy_Change()
Dim today As Date Dim age As Date Dim valeur As Byte Dim calc As Long Dim uz As Integer Dim dat As Integer Dim som As Integer Dim foer As String Dim loar As String
'contrôle de saisie en fonction de l'âge valeur = Len(Me.Txtdatebornphy.Text)
If valeur = 10 Then
foer = Mid(Txtdatebornphy.Text, 7) loar = Mid(CStr(CDate(Date)), 7) uz = Val(foer) dat = Val(loar) som = dat - uz
If som <= 10 And som >= 7 Then If Me.Txtcollecteur.Text <> "" Then Me.RbcarteNon = True Me.PnlréférencementParrain.Visible = True Me.PnlréférencementParrain.Enabled = True Me.TxtNomParrain = "" Me.TxtNomParrain.SetFocus Exit Sub End If End If If som < 7 Then Me.Txtdatebornphy.Value = "" Me.Txtdatebornphy.SetFocus MsgBox "Le client doit avoir un âge supérieur ou égale à 7 ans au minimum", vbOKOnly + vbCritical, "Erreur" Me.Pnlphysique.Enabled = True Me.Txtdatebornphy.Value = "" Me.Txtdatebornphy.SetFocus
End If
End If
Me.Txtdatebornphy.SetFocus
End Sub
Le bug récurent est que les textbox refusent de prendre le curseur et l'autocomplétion des combobox qui ne fonctionne plus
comme exemple voici le code du combobox qui récupère les nationalités
Private Sub CBnationalphy_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
'dévérouillage de la console combobox Dim F As Integer Dim lr As Integer Dim bis As Integer Dim ws As Worksheet Set ws = Sheets("Nationalité")
lr = ws.Cells(Rows.count, 1).End(xlUp).Row + 1
Select Case KeyAscii
Case 97 To 122 ' Caracteres alpha min
Case 8 'Retour Chariot
Case Else
KeyAscii = 0
End Select
With ws
For F = 2 To lr Me.CBnationalphy.AddItem (.Cells(F, 1)) Next F End With
ucfoutu
Messages postés18038Date d'inscriptionlundi 7 décembre 2009StatutModérateurDernière intervention11 avril 2018209 26 janv. 2018 à 19:19
Bonjour
Plusieurs lignes de ton code me donnent à penser que tu n'as aucune conscience réelle du résultat des instructions que tu écris.
La plus surprenante de ces instructions est sans aucun doute l'utilisation que tu fais de l'évènement Keypress de la combobox !
Pour ton info : à chaque fois qu'une touche alphabétique est pressée dans la zone d'édition de ta combo, tu y ajoutes x fois (ou x = lr) les mêmes articles (toujours les mêmes, d'ailleurs).
Très rapidement, même les oeufs doivent envier ta combobox. Même eux sont moins pleins qu'elle ne l'est ... Et elle l'est à ce point (pleine) qu'elle déborde .
Devant un tel constat, je préfère ne pas aller au-delà, le seul conseil que j'ai à te donner étant de t'intéresser d'abord sérieusement à la fois aux choses les plus élémentaires et à la nature des instructions que tu exécutes.
gruf
Messages postés29Date d'inscriptionjeudi 18 janvier 2018StatutMembreDernière intervention25 octobre 2018 27 janv. 2018 à 11:46
Merci ucfoutu je vais modifier mon code pour voir
gruf
Messages postés29Date d'inscriptionjeudi 18 janvier 2018StatutMembreDernière intervention25 octobre 2018 7 févr. 2018 à 01:40
grand merci j'ai trouvé la source du problème. Et la modification du code a largement accéléré le traitement. Merci ucfoutu
26 janv. 2018 à 09:57
Le bug récurent est que les textbox refusent de prendre le curseur et l'autocomplétion des combobox qui ne fonctionne plus
comme exemple voici le code du combobox qui récupère les nationalités
Merci d'avance