VBA Excel demande aide
pkli54 Messages postés 96 Statut Membre -
voila mon problème, j'ai crée un userform dans lequel j'ai plusieurs textbox dont certaines ne doivent être remplies que par des chiffres.J'ai utilisé l'instruction if not isnumeric then... puis j'affiche un message et remet la textbox à vide avec l'instruction textbox1.text = "". Et c'est maintenant que çà se corse car lorsque j'ai rempli toutes mes textbox et que je valide mes données et que normalement mes textbox se vident, j'ai mon message de rentrer un nombre dans les textbox "numérique" qui vient et je ne sais pas comment éviter de lancer cette instruction à la validation des données.
C'est peut etre un peu confus mais si il y a quelqu'un qui veut bien m'aider je pourrai lui envoyer mon classeur xl
Merci en attendant
23 réponses
- 1
- 2
Le problème porte sur un formulaire VBA où certaines TextBox doivent accepter uniquement des chiffres et où IsNumeric déclenche des messages même après la vidange des champs lors de la validation. Des solutions préconisent de réinitialiser l’ensemble des contrôles après la saisie et d’enregistrer les données dans une feuille dédiée, en utilisant un bloc With pour vider TextBox1 à TextBox11 et ComboBox1. D’autres interventions insistent sur la suppression éventuelle du lien direct ContrôleSource et sur le contrôle de la logique de validation afin que l’erreur ne soit plus déclenchée au moment de l’enregistrement. En complément, certains échanges évoquent les difficultés liées à l’activation et à l’écriture dans la feuille Moteurs et à la gestion des contrôles qui alimentent les cellules.
-
bonjour
Je veux bien t'aider, mets ton classeur dans : http://cjoint.com/
en enlevant le confidentiel, puis tu donnes l'adresse ici.
à bientôt.
-
Salut gbinforme,
c'est sympa de ta part de bien vouloir me donner un coup de main.
Ci dessous l'adresse demandée, j'espère que çà fonctionnera.
http://cjoint.com/?mslNJVDwmx
Si tu as des questions, n'hésite pas !!
Merci et bon dimanche- Salut,
Et c'est maintenant que çà se corse car lorsque j'ai rempli toutes mes textbox et que je valide mes données et que normalement mes textbox se vident, j'ai mon message de rentrer un nombre dans les textbox "numérique" qui vient
Private Sub TextBox2_Change() If Not IsNumeric(TextBox2.Text) Then MsgBox "Vous devez entrer un nombre." TextBox2.Text = "" End If End Sub
Donc l'evenement Change de la zone texte veut dire que tout le temps que tu changes le contenu s'il n'est pas un nombre tu auras le MsgBox.
Quand tu fait click sur OK tu vides les zones de texte donc en ce moment il y a un changement dans les zones de texte et l'evenement Change s'éxécute. Comme un contenu NULL n'est pas un nombre tu as le MsgBox.
Tu dois supprimer dans ton code tous les lignes avec l'evenement Change et valide tes données au moment d'evenement Click du bouton OK.
J'ai ajouté TextBoxN.SetFocus ( la zone à corrigée prend le focus)
Sauvegarde ton code ensuite remplaces avec celui-là (j'ai mis en commentaire les lignes avec Change)Private Sub CommandButton2_Click() Feuilledesaisiemoteurs.Hide Rows(2).Select Selection.Delete End Sub 'Private Sub TextBox2_Change() 'If Not IsNumeric(TextBox2.Text) Then 'MsgBox "Vous devez entrer un nombre." 'TextBox2.Text = "" 'End If 'End Sub ' ' 'Private Sub TextBox3_change() 'If Not IsNumeric(TextBox3.Text) Then 'MsgBox "Vous devez entrer un nombre." 'TextBox3.Text = "" 'End If 'End Sub ' ' 'Private Sub TextBox4_Change() 'If Not IsNumeric(TextBox4.Text) Then 'MsgBox "Vous devez entrer un nombre." 'TextBox4.Text = "" 'End If 'End Sub ' 'Private Sub TextBox5_Change() 'If Not IsNumeric(TextBox5.Text) Then 'MsgBox "Vous devez entrer un nombre." 'TextBox5.Text = "" 'End If 'End Sub Private Sub CommandButton1_Click() If Not IsNumeric(TextBox2.Text) Then MsgBox "Vous devez entrer un nombre dans le champ - Intensité nominale." TextBox2.Text = "" TextBox2.SetFocus Exit Sub ElseIf Not IsNumeric(TextBox3.Text) Then MsgBox "Vous devez entrer un nombre dans le champ - Phase 1." TextBox3.Text = "" TextBox3.SetFocus Exit Sub ElseIf Not IsNumeric(TextBox4.Text) Then MsgBox "Vous devez entrer un nombre dans le champ - Phase 2." TextBox4.Text = "" TextBox4.SetFocus Exit Sub ElseIf Not IsNumeric(TextBox5.Text) Then MsgBox "Vous devez entrer un nombre dans le champ - Phase 3." TextBox5.Text = "" TextBox5.SetFocus Exit Sub Else Worksheets("Moteurs").Activate Rows(2).Select Selection.Insert Rows(2).Select Selection.Insert With Feuilledesaisiemoteurs .TextBox1.Text = "" .TextBox2.Text = "" .TextBox3.Text = "" .TextBox4.Text = "" .TextBox5.Text = "" .TextBox6.Text = "" .TextBox7.Text = "" .TextBox8.Text = "" .TextBox9.Text = "" .TextBox10.Text = "" .ComboBox1.Text = "" .Textbox11.Text = "" End With Unload Me End If End Sub
-
-
Resalut lami20j,
je viens de faire ce que tu m'a envoyer et cà fonctionne nickel mais...........car il y a toujours un mais, lorque que je valide mes données pour mon premier moteur, la feuille "moteurs" s'affiche et suis obliger de retourner à la page de garde et de cliquer sur le bouton nouveau moteur
Je pense que c'est du au fait de la ligne suivante:
Worksheets("Moteurs").Activate
Si je la supprime comment faire pour que mes données soit copier au bon endroit sans faire apparaitre la feuille en question???
Désolé de te déranger mais suis nouveau en vba
merci -
Re,
Je pense que c'est du au fait de la ligne suivante:
Worksheets("Moteurs").Activate
Si je la supprime comment faire pour que mes données soit copier au bon endroit sans faire apparaitre la feuille en question???
Tu ne la supprimes pas. Elle te faut pour écrire tes données.
EntreEnd With
etUnload Me
ajouteWorksheets("Page de garde").Activate
Donc une fois le traitement terminé tu reviens sur la Page de garde
Code completPrivate Sub CommandButton2_Click() Feuilledesaisiemoteurs.Hide Rows(2).Select Selection.Delete End Sub 'Private Sub TextBox2_Change() 'If Not IsNumeric(TextBox2.Text) Then 'MsgBox "Vous devez entrer un nombre." 'TextBox2.Text = "" 'End If 'End Sub ' ' 'Private Sub TextBox3_change() 'If Not IsNumeric(TextBox3.Text) Then 'MsgBox "Vous devez entrer un nombre." 'TextBox3.Text = "" 'End If 'End Sub ' ' 'Private Sub TextBox4_Change() 'If Not IsNumeric(TextBox4.Text) Then 'MsgBox "Vous devez entrer un nombre." 'TextBox4.Text = "" 'End If 'End Sub ' 'Private Sub TextBox5_Change() 'If Not IsNumeric(TextBox5.Text) Then 'MsgBox "Vous devez entrer un nombre." 'TextBox5.Text = "" 'End If 'End Sub Private Sub CommandButton1_Click() If Not IsNumeric(TextBox2.Text) Then MsgBox "Vous devez entrer un nombre dans le champ - Intensité nominale." TextBox2.Text = "" TextBox2.SetFocus Exit Sub ElseIf Not IsNumeric(TextBox3.Text) Then MsgBox "Vous devez entrer un nombre dans le champ - Phase 1." TextBox3.Text = "" TextBox3.SetFocus Exit Sub ElseIf Not IsNumeric(TextBox4.Text) Then MsgBox "Vous devez entrer un nombre dans le champ - Phase 2." TextBox4.Text = "" TextBox4.SetFocus Exit Sub ElseIf Not IsNumeric(TextBox5.Text) Then MsgBox "Vous devez entrer un nombre dans le champ - Phase 3." TextBox5.Text = "" TextBox5.SetFocus Exit Sub Else Worksheets("Moteurs").Activate Rows(2).Select Selection.Insert Rows(2).Select Selection.Insert With Feuilledesaisiemoteurs .TextBox1.Text = "" .TextBox2.Text = "" .TextBox3.Text = "" .TextBox4.Text = "" .TextBox5.Text = "" .TextBox6.Text = "" .TextBox7.Text = "" .TextBox8.Text = "" .TextBox9.Text = "" .TextBox10.Text = "" .ComboBox1.Text = "" .Textbox11.Text = "" End With Worksheets("Page de garde").Activate ' reviens dans la Page de garde Unload Me End If End Sub -
Re,
OK pour la ligne supplémentaire, mais j'ai du mal m'expliquer:
quand je suis dans le userform, j'ai peut etre une dizaine de moteurs à rentrer et je voudrais éviter à chaque fois que je clique sur ok de revenir à la page de garde >nouveau moteur>rentrer les données ect ect...
je devrais rajouter un bouton dans le userform pour valider les données et rester dans le userform puis avec un autre bouton sortir du userform ??
qu'en penses tu ???
comment faire pour écrire les données dans la bonne feuille sans quitter le userform et sans faire apparaitre en fond la feuille moteurs ???
merci -
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
Ok, j'ai compris ce que tu veux.
Dès que j'ai fait les modif je t'envoie le code. -
D'abord quelques conseils:
Essaie de donner des noms à tes objects (zone de texte, boutons, feuille...)
TextBox2 ce n'est pas très clair et tu vois ça quand il faut corriger ou ajouter dans le code
Comme TextBox2 c'est le champ pour Intensité nominale tu pourras nommé ta zone : txtIntesiteNominale ou txtIntensNom, etc...
prefix txt pour savoir qu'il s'agit d'une zone de texte
IntensitéNominale tu sais à quoi se réfère ta zone de texte.
Des prefixes
cmd pour CommandButton (cmdOk, cmdAnnuler - mieux que CommandButton1,...)
lst pour ListBox
opt pour OptionButton, etc....
Revenons à ton code.
Que veut qu'il se passe quand tu fait clic sur le bouton Annuler?
Je vois dans ton code que tu caches la feuille de saisie et tu supprimes la ligne 2. Pourquoi? Tu veux annuler la dernière saisie?
Si tu te contentes de cacher la feuille, sache qu'elle reste en mémoire. Il faut la déchargée. Par exemple avec UnloadMe ou Unload Ta_Feuille.
Pour quitter l'application crée un bouton avec le libellé Fin et tu le nomme cmdFin et tu ajoutes ce bout de codePrivate Sub cmdFin_Click() Worksheets("Page de garde").Activate Unload Me End Sub
Voilà le code avec le bouton Fin ajoutéPrivate Sub cmdFin_Click() Worksheets("Page de garde").Activate Unload Me End Sub Private Sub CommandButton2_Click() Feuilledesaisiemoteurs.Hide Rows(2).Select Selection.Delete End Sub 'Private Sub TextBox2_Change() 'If Not IsNumeric(TextBox2.Text) Then 'MsgBox "Vous devez entrer un nombre." 'TextBox2.Text = "" 'End If 'End Sub ' ' 'Private Sub TextBox3_change() 'If Not IsNumeric(TextBox3.Text) Then 'MsgBox "Vous devez entrer un nombre." 'TextBox3.Text = "" 'End If 'End Sub ' ' 'Private Sub TextBox4_Change() 'If Not IsNumeric(TextBox4.Text) Then 'MsgBox "Vous devez entrer un nombre." 'TextBox4.Text = "" 'End If 'End Sub ' 'Private Sub TextBox5_Change() 'If Not IsNumeric(TextBox5.Text) Then 'MsgBox "Vous devez entrer un nombre." 'TextBox5.Text = "" 'End If 'End Sub Private Sub CommandButton1_Click() If Not IsNumeric(TextBox2.Text) Then MsgBox "Vous devez entrer un nombre dans le champ - Intensité nominale." TextBox2.Text = "" TextBox2.SetFocus Exit Sub ElseIf Not IsNumeric(TextBox3.Text) Then MsgBox "Vous devez entrer un nombre dans le champ - Phase 1." TextBox3.Text = "" TextBox3.SetFocus Exit Sub ElseIf Not IsNumeric(TextBox4.Text) Then MsgBox "Vous devez entrer un nombre dans le champ - Phase 2." TextBox4.Text = "" TextBox4.SetFocus Exit Sub ElseIf Not IsNumeric(TextBox5.Text) Then MsgBox "Vous devez entrer un nombre dans le champ - Phase 3." TextBox5.Text = "" TextBox5.SetFocus Exit Sub Else Worksheets("Moteurs").Activate Rows(2).Select Selection.Insert Rows(2).Select Selection.Insert With Feuilledesaisiemoteurs .TextBox1.Text = "" .TextBox2.Text = "" .TextBox3.Text = "" .TextBox4.Text = "" .TextBox5.Text = "" .TextBox6.Text = "" .TextBox7.Text = "" .TextBox8.Text = "" .TextBox9.Text = "" .TextBox10.Text = "" .ComboBox1.Text = "" .Textbox11.Text = "" End With End If End Sub-
Re,
en fait j'ai commencé a faire ce userform par hasard et suivi quelque tutoriel sur le net donc je ne suis pas un grand specialiste, j'avais vu que l'on pouvait renommer les boutons ...mais m'était dis que de toute façon je n'irais pas trés loin dans la programmation et c'est pour çà que je n'ai presque rien renommé, mais comme je constate que c'est assez prenant et avec l'aide de personne comme toi, je crois que je vais essayé d'aller au terme de ce petit projet.
Voila ce que j'aimerai faire: page de garde: je crois qu'elle est OK: appelle des différents userform pour renter les données.
userform saisie moteurs comme tu l'a tres bien compris ici je veux rentrer mes différents moteurs: 1 bouton pour valider les données qui envoie ces valeurs dans la feuille moteurs (mais ne la fait pas apparaitre) ,vide toute les textbox, ainsi je peux rentrer tous mes moteurs.
Le bouton annuler pour effacer la dernière ligne rentrer ?????(nécessaire ou pas ???)
Au début je voulais créer 2 autres boutons pour voir les enregistrements précédent et suivant mais je ne sais pas si c'est faisable.
Je dois créer plusieurs userform car on a plusieurs types de controle a effectuer et a acter.
Voila en gros ce que je dois faire.
En tous cas merci pourt'inquiéter de mon sort.
A plus
-
-
Au début je voulais créer 2 autres boutons pour voir les enregistrements précédent et suivant mais je ne sais pas si c'est faisable.
Bien sûr que c'est faisable. Mais en ce cas c'est mieux de créer une autre feuille pour Visualisation et pourquoi pas pour Editer (le cas où tu veux apporter des modifications à tes données). -
Quand tu dis de créer une feuille visualisation, çà serai une copie de la feuille moteurs ????
En principe , il ne dois pas y avoir de modifs sauf si on vient a changer un moteur, mais bon on ne sais jamais.
Pour l'instant je vais essayé de terminer sans les boutons de recherche(précédent et suivant trop compliqué)
Encore un petit service: lorsque que je rentre les données dans la feuille moteurs j'insère le nouveau moteur et ceux rentrer auparavant descende d'une ligne, je voudrais renter le nouveau à la suite des autres quel instruction dois je mettre au lieu de :Rows(2).Select
Selection.Insert
merci -
Quand tu dis de créer une feuille visualisation, çà serai une copie de la feuille moteurs ????
Oui pour les zones de texte et les libellés. Mais pour les boutons ça change.
Précédant, Suivant, Le 1er enregistrement, Le dernier enregistrement, Recherche, Editer, Annuler, Supprimer....
Pour le petit service. Je ne comprends pas ce que tu veux.
Tu veux le données comme ça
moteur n
.
.
.
moteur 1
?
ou
moteur 1
.
.
moteur n
? -
c'est exactement çà:
moteur 1
.
.
moteur n
est çà çà bloque:
Private Sub CommandButton4_Click()
Feuilledesaisiemoteurs.Hide
Load Worksheets("Moteurs") <<<<çà me met une erreur
Worksheets("Moteurs").Show <<<<çà me met une erreur -
Merci, çà marche maintenant et pour classer par ordre d'entrée
moteur 1
.
.
moteur n
je fais quoi ???????????et comment
merci
désolé de te déranger mais pour l'instant t'es le seul qui ai bien voulu m'aider donc j'en profite ( encore un peu) -
Par ordre d'entrée :
remplace ce codeWorksheets("Moteurs").Activate Rows(2).Select Selection.Insert Rows(2).Select Selection.Insert With Feuilledesaisiemoteurs .TextBox1.Text = "" .TextBox2.Text = "" .TextBox3.Text = "" .TextBox4.Text = "" .TextBox5.Text = "" .TextBox6.Text = "" .TextBox7.Text = "" .TextBox8.Text = "" .TextBox9.Text = "" .TextBox10.Text = "" .ComboBox1.Text = "" .Textbox11.Text = "" End WithavecWorksheets("Moteurs").Activate r = Range("A65536").End(xlUp).Row + 1 Cells(r, 1) = Textbox11.Text Cells(r, 2) = ComboBox1.Text Cells(r, 3) = TextBox1.Text Cells(r, 4) = TextBox2.Text Cells(r, 5) = TextBox3.Text Cells(r, 6) = TextBox4.Text Cells(r, 7) = TextBox5.Text Cells(r, 8) = TextBox6.Text Cells(r, 9) = TextBox7.Text Cells(r, 10) = TextBox8.Text Cells(r, 11) = TextBox9.Text Cells(r, 12) = TextBox9.Text With Feuilledesaisiemoteurs .TextBox1.Text = "" .TextBox2.Text = "" .TextBox3.Text = "" .TextBox4.Text = "" .TextBox5.Text = "" .TextBox6.Text = "" .TextBox7.Text = "" .TextBox8.Text = "" .TextBox9.Text = "" .TextBox10.Text = "" .ComboBox1.Text = "" .Textbox11.Text = "" End With
En ce cas tu auras le
ligne 2 - moteur1 ( la 1ère saisie)
ligne 3 - moteur2
.
.
.
ligne n - moteur n ( la dérnière saisie)
J'ai remarqué aussi que tu as la propriètes ControlSource positionnée sur certaines cellules pour les zones de texte et combobox. Vérifie si ça sers à quelque chose dans ton cas. Moi j'ai supprimé. -
C'est sympa de ta part de continué à m'aider.
Entretemps j'ai fait quelques modifs et certainement des erreurs.
J'ai rajouter tes instructions mais j'ai toujours une erreur à la ligne 2 de la feuille moteurs et aussi quand je valide avec OK du Userform çà bloque le userform ????
Il faudrait aussi pouvoir utiliser le caractere - car je peux avoir des moteurs en mono donc les textbox isnumeric doivent pouvoir accepter le -.
Je te met le classeur entier modifié à l'adresse ci dessous.
Merci et bonne soirée
http://cjoint.com/?msvcZd0pOP -
avec OK du Userform çà bloque le userform ????
Il faut spécifier ce que tu saisies ou ce que tu fait pour savoir chercher l'erreur. Je n'ai pas des erreurs donc je ne sais pas où est le problème.
Essaie pour l'instant une saisie normale, pour voir le comportement de ta ligne 2
http://cjoint.com/?msvzFYgCRs
pouvoir utiliser le caractere - Donne un exemple de valeur que tu veux saisir.-
- Reponse N°18
J'ai remarqué aussi que tu as la propriètes ControlSource positionnée sur certaines cellules pour les zones de texte et combobox. Vérifie si ça sers à quelque chose dans ton cas. Moi j'ai supprimé.
Donc j'ai supprimé la ligne 2 ou tu avais dans la cellule B2 la marque Wilo.
Ensuite j'ai supprimé les propriètes ControlSource de tes zones de texte et CompoBox. ControlSource était positionné pour chaque zone de texte et la combobox à Moteurs!A2.......
-
-
Par contre je ne sais pas si tu as remarqué mais quand tu valide avec le bouton OK dans le userform, il y a le bouton "retour feuille de saisie" qui apparait à droite du userform ???
problème avec les instructions visible ????-
Essaie ce classeur pour voir le comportement après OK http://cjoint.com/?mswbYVld6f
- C'est impeccable!!!!
T'es super sympa!!!
Grace à toi mon projet a fait un grand pas aujourd'hui et ne vais pas abuser de ta gentillesse pour ce soir.
Est ce que je peux encore compter sur toi si j'ai d'autres soucis (cela sera surement le cas)???
Merci encore et je te souhaite une bonne nuit.
Quand à moi, pour ce soir c'est fini , demain boulot à 5h.
Encore un grand merci et a bientôt. - J'ai fait une erreur dans le dernier fichier que j'ai envoyé (la position de End If). Voilà la dernière version http://cjoint.com/?mswwJvLJze
Il faut que tu explique ce que tu veux en ce qui concerne les valeurs qui peuvent contenir -.
-
-
en fait dans les textbox intensite absorbée phase 1 / phase 2 et phase 3 on a dit qu'il ne fallait que des chiffres mais lorsque que j'ai des moteurs monophasés , je n'ai qu'une seule intensité absorbée qui peut etre rentrée en ph1 ph 2 ou ph3 tout dépend du cablage donc il faudrait prévoir de pouvoir utiliser le caractere --- pour dire qu'il n'y a pas de valeur dans 2 textbox
OK ????-
- Bonjour lami20j,
J'ai récupéré ta dernière modif, elle fonctionne,pas de problème.
Moi j'étais parti sur une instruction OR différent de.
Maintenant je suis au boulot jusque 17h et ce soir j'ai vais "encore" modifié la feuille de saisie moteurs pour y rajouter la tension. Et après je pense qu'elle devrait être OK pour utilisation.
Encore une fois, je te renouvelle mes remerciements car sans toi, je pense que pour arriver a ce résultat j'aurai mis plusieurs semaines.
Bonne journée à toi.
Merci encore!!
Ciao
-
-
Salut lami20j,
je te l'avais dit que j'aurai encore besoin de tes connaissances.
J'ai rajouté 2 optionbutton pour faire un choix mais j'ai un problème avec la syntaxe.
Si tu veux bien y jeter un oeil dis le moi, je posterais le classeur comme hier.
Merci d'avance. -
-
-
Dans la feuille moteurs, j'ai rajouté la colonne " tension".
Dans le userform j'ai créer les 2 optionbutton " 230 Volts et 400Volts".
Ce que j'aimeari c'est que si on choisit 230 il faut que dans la feuille moteurs s'affiche 230 et idem avec 400- Merci lami20j,
c'est OK.
Petite question, j'ai mis la colonne tension en dernier dans ma feuille, si je veux la déplacer par exemple en colonne D, je suppose que je dois modifier toutes les lignes dans le code pour tous les reports d'information??
Ce que je voudrais, c'est faire une impression un peu plus présentable que le tableau de la feuille , donc peut etre qu'il n'ai pas nécessaire que je déplace toutes les données??
Que dois je utiliser pour une impression pour pouvoir donner le dossier au client ??export vers un autre programme ??sous excel ??
-
-
j'ai mis la colonne tension en dernier dans ma feuille, si je veux la déplacer par exemple en colonne D, je suppose que je dois modifier toutes les lignes dans le code pour tous les reports d'information??
Oui il faut faire corespondre Cells(r, la_colonne) aux zones de texte (voilà pourquoi c'était mieux de nommer les zones de texte.
Pour l'impression tu peux arranger le tableau sous excel. La mise en forme de classeur n'affecte pas la saisie dans les cellules, tant que les adresses de cellules ne changent pas.
Si tu insères une colonne par exemple les adresses de cellules change donc il faut modifier dans le code. -
Bonjour lami20j,
problème du jour (si çà ne te dérange pas et surtout si tu veux bien),
j'ai créé un nouveau Userform (feuillesaisieCTA) dans lequel j'ai 2 Optionbutton qui doivent me permettrent l'accés à 3 textbox dans lesquelles il faudrait faire des calculs ????
je te met le classeur en copie , et si tu veux bien y regarder.
Merci d'avance
http://cjoint.com/?mupGf6rMP4-
Salut,
Il faut que tu me dise ce que tu veux faire avec la nouvelle Feuille.
Je vois que tu as travaillé, tu as nommé tes "objets", cependant tu as exageré
Par exemple pour la feuille "Feuilledesaisiemoteurs" tu devais la nommé plutôt frmMoteurs
Il faut eviter aussi les accents les espaces.
Exemple:
la zone de texte TxtRéglageThermique
plutôt txtReglTherm
Désolé pour les remarques mais le but c'est de simplifier les choses.
En général le préfixes tu le mets en minuscules.
Voilà une liste que tu peus utiliser pour préfixer les noms de tes "objets" :cbo - ComboBox chk - CheckBox cmd - CommandButton fra - Frame frm - UserForm img - Image lbl - Label lst - ListBox opt - OptionButton txt - TextBox
-
- 1
- 2