Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : saisie semi-automatique [ Divers / Débutants ] (Estelle_BNP)

lundi 13 août 2007 à 16:10:20 | saisie semi-automatique

Estelle_BNP

Bonjour,

j'ai créé sous Excel une base de donnée de produits. Chaque produit a un identifiant unique composer de chiffres et de lettres.
J'ai créé également un UserForm (UserForm1) avec des TextBox (TextBox1). Cette UserForm contient au début une TextBox où je souhaite saisir l'idendifiant du produit et ensuite des TextBox qui contiennent les différentes caractéristiques du produit.
Je souhaiterai que
1- la machine me propose le plus vite possible l'identifiant du produit lorsque je commence à le saisir (saisie semi-automatique à partir de la colonne (colonne A, de la cellule A7 à A144 pour l'instant) qui contient tous les identifiants). Le nombre d'identifiants évoluera dans le temps.
2- la machine restitue les caractéristiques de ce produit dans les autres TextBox de la UserForm (la colonne B est le nom du produit, par exemple).

J'ai trouvé des programmes tout fait de saisie automatique sur le site mais lorsque je les copie/colle dans Excel, j'ai toujours un message d'erreur. Par ailleurs, je ne suis pas sûre qu'ils conviennent exactement car je n'arrive pas à comprendre le code. Pouvez-vous m'aider ?

Merci beaucoup.

lundi 13 août 2007 à 19:03:24 | Re : saisie semi-automatique

mortalino

Membre Club
Réponse acceptée !


salut,

t'as de la chance, chose qui n'est pas d'origine avec vb6, l'est en VBA,  savoir la saisie semi-automatique.
Le combobox gère ceci.

Ensuite, à l'évènement initialize de ton userform, faut remplir le combobox (et donc supprimes ton TextBox1) :

Dim z as long

z = Range("A7").End(xlDown).Row
Combobox1.RowSource = "Feuil1!A7:A" & z
' remplace Feuil1 par le bon nom de ta feuille contenant les données.

Ensuite, dans l'évènement change du Combobox1 :

TextBox2.Text = Cells(Combobox1.ListIndex + 7, 2)
TextBox3.Text = Cells(Combobox1.ListIndex + 7, 3)
TextBox4.Text = Cells(Combobox1.ListIndex + 7, 4)
TextBox5.Text = Cells(Combobox1.ListIndex + 7, 5)
ets...

En gros, ListIndex c'est la position de l'item choisi, en base 0 (cad que le premier élément choisi et le n°0, le 2nd élément = N°1, etc)
Tes première données sont a partir de la ligne 7, Donc 7 + ListIndex = le numéro de la ligne dans Exce contenant les données à afficher.
Suffit de lire en affectant le bon numéro de colonne (second paramètre de l'objet Cell)

@++


( Nouveau forum : Exclusivement Office & VBA

vendredi 17 août 2007 à 10:01:43 | Re : saisie semi-automatique

Estelle_BNP

C'est exactement ce que je souhaitais. Merci pour cette explication claire et concise.

Il me reste un point en suspens maintenant que j'ai implémenté votre solution : comment ne pas faire planter le programme lorsque le code saisi dans la ComboBox ne correspond pas à un code de la liste (colonne A d'Excel) ?

Je souhaiterais qu'il me mette un message du style 'Code non trouvé' plutôt que d'avoir la fenêtre Erreur d'exécution 13 : Incompatibilité de type.


vendredi 17 août 2007 à 17:55:59 | Re : saisie semi-automatique

mortalino

Membre Club
Réponse acceptée !


pour reprendre sur mon exemple, tu pourrais gérer l'erreur :

dans l'évènement change du Combobox1 :

On Error GoTo MyErr
TextBox2.Text = Cells(Combobox1.ListIndex + 7, 2)
TextBox3.Text = Cells(Combobox1.ListIndex + 7, 3)
TextBox4.Text = Cells(Combobox1.ListIndex + 7, 4)
TextBox5.Text = Cells(Combobox1.ListIndex + 7, 5)

Exit Sub
MyErr
MsgBox "Valeur non trouvée ! Choisissez la parmi la liste."
Combobox1.Text = vbNullString
End Sub

@++


( Nouveau forum : Exclusivement Office & VBA

lundi 20 août 2007 à 09:54:59 | Re : saisie semi-automatique

Estelle_BNP

Ca marche à condition d'écrire MyErr: au lieu de MyErr.

Par contre le fait d'initialiser le texte de la Combobox1 ) Null relance la fonction Change et donc je dois cliquer deux fois sur le bouton OK de la fenêtre avec le message d'erreur. Y-a-t-il un moyen pour éviter ça ?

Merci.




Cette discussion est classé dans : textbox, semi, saisie, produit, automatique


Répondre à ce message

Sujets en rapport avec ce message

saisie semi automatique [ par saly ] bjr tt le monde,Dans une fenetre de connexion j'ai une zone de texte pour saisir le nom du server , je voudrai rendre cette saisie automatique pour ne comment avoir la saisie semi-automatique dans une zone de texte [ par annelise ] Bonjour,Comment peut on faire pour avoir la saisie semi automatique dans une zone de texte, je m explique. J ai une table client et quand j'entre une API - Saisie semi automatique dans un combo box [ par ABL-Online ] Bonjour, Pourriez-vous m'indiquer quel est l'api qui me permettrais de faire la saisie semi-automatique dans un combo box !Merci d'avance Cherche code pour saisie semi-automatique [ par slinux ] Logiciel Access 2000 Salut , je recherche, une sourceme permettant d'afficher dans un Zone liste les valeurs d'un champ,filtrer en fonction des caract AU SECOUUUURRRRSS : DataCombo ET SAISIE SEMI AUTOMATIQUE [ par samisamu ] SAMISAMUBonjour à tous, et spécialement à celui ou celle qui pourra me dépanner :J'ai un datacombo lié à une commande dans Saisie semi automatique VBA EXCEL [ par erti1711 ] Bonjour a tous,je travaille sur excel,j'ai une feuille CLIENT a 9 colonnes et je m'intéresse au deux premières colonnes c'est a dire le CODECLIENT et Saisie semi automatique à partir d'une autre feuille d'excel [ par loupturc ] Salut à tous :)Voila je souahite savoir si il est possible de faire une saisie semi automatique dans excel à partir d'une autre feuille du même classe Saisie semi-automatique sur menu déroulant dans une webform [ par annuaire ] Dans une liste déroulante (DropDownList) composée de 2000 entrées y a t il une possibilité d'effectuer une saisie semi-automatique (ou un autre systèm saisie semi-automatique [ par sorcier_sly ] Salut, Je souhaite realiser une saisie semi_automatique. Lorsqu'un utilisateur commence a taper dans un textbox par exemple, je souhaite afficher dans Saisie semi-automatique ComboBox [ par thkiller ] Bonjour à tous,Je désir effectuer une saisie semi-automatique dans un ComboBox et donc voila je croique tt est dis lol !!Merci.


Nos sponsors

Sondage...

CalendriCode

Décembre 2008
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,686 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.