VBA pour saisie automatique

Bonjour à tous,

Le titre n'est pas forcément le bon mille excuses, j'aimerais vous soumettre un projet que j'ai pour une saisie dans un userform

Je joins un petit fichier avec mes "exigences" ça fait assez terroriste

Je remercie tous ceux qui m'aideront sur ce problème, je n'y connais pas grand chose en VBA

Longue vie au forum Excel-Pratique

Lionel

20essai-vba.xlsm (243.71 Ko)

Bonjour et bienvenue sur le forum,

Je n'ai pas très bien compris la seconde demande, et surtout je ne comprends pas trop à quoi sert le formulaire, en clair si tu commences par saisir d dans ta cellule et que tu cliques sur le bouton code, tu veux que ça te propose des noms sur ton formulaire?

En tout cas pour la deuxième demande, tu trouveras le résultat ici

Tu écris ton code et ça charge les infos quand tu valides l'info dans la cellule code, en revanche, ça supprime toute le contenu de la ligne si le code n'est pas trouvé ou bien si il n'y a rien dans la cellule, c'est peut-être brutal si tu veux mettre des choses à côté, éventuellement il faudra voir pour moins brutal :p

Bonjour et merci, en fait je me suis mal exprimé:

Le tableau tel qu'il est là permet déjà de rentrer via des formules, les lignes contenues dans BASE qui est la base de données, on se positionne sur la colonne A de la feuille SCAN et on rentre le code comme par exemple 100200 ou 100300 etc... et ça rempli toute la ligne

Ici c'est facile parce qu'il y a une dizaine de noms mais ma vraie base en contient 3000, d'où le bouton "CODE" dès que tu cliques dessus et que tu rentres dans le champs Nom==> par exemple D tu obtiens en dessous dans le cadre une liste de 6 noms, ma demande est donc:

Pouvoir cliquer sur un de ces 6 noms en cliquant sur le code et qu'il s'inscrive dans la colonne A, exemple dans la liste si tu choisis un nom commençant par D tu as 6 noms, De Niro, De Funès, Depardieu etc... et il y a un code c'est ce code qui doit apparaître dans la colonne A de mon tableau en cliquant dessus.

Je ne suis pas certain d'être clair

Merci de ta réponse

Rebonjour,

Quitte à passer par du VBA, autant enlever tes formules

Je peux aller te chercher les infos par code tant qu'on y est, c'est full VBA comme ça

Ton formulaire marche à présent, ça te charge la liste, et tu double cliques sur la personne que tu veux prendre, tu peux également filtrer par nom et ça s'adapte automatiquement en même temps que tu écris, merci de me dire si ça te convient

Le fichier :

Magnifique merci, c'est ce que je cherche à faire, en fait je ne peux pas me passer des formules car je fais appel à la base de données via le code écrit en code barre via une douchette, j'ai donc besoin de pouvoir avoir un autre moyen.

Dans l'idéal c'est que dès que je clique sur la ligne dans le formulaire il inscrive la ligne complète exemple :

100100 Dupontel Albert 1965 M FRA Acteurs Français et que la sélection de cellule soit sur la colonne H "CARRIERE" je sais ainsi entrer ce qui doit venir ensuite, c'est pour ça que la feuille est verrouillée, je scan le code en A hop le curseur va en H puis I et puis il retourne en A et ainsi de suite

Merci de ta patience

Lionel

Donc tu veux dire que les formules sont obligatoires car tu empêches la saisie sur ces cellules? Tu as vraiment besoin de les verouiller? pour ce qui est de passer à la colonne H puis I, ça je peux le faire facilement en VBA

Voici le résultat dont je te parle, me dire si ça te va, sinon on peut encore changer, je peux te laisser les formules si tu le veux vraiment

Re, oui c'est tout à fait ça que je veux faire tu as parfaitement exhaussé mon souhait pour le bouton CODE

En fait j'ai besoin de garder les formules pour la douchette et les codes barres ou QR quand je ne me sers pas du bouton CODE

et je verrouille la page d'une part pour éviter d'effacer les données ou les formules et pour faire un saut automatique de A vers H parce que les données qui vont dans H et I viennent également d'un code barre ou qr, cela évite un maximum les manipulations clavier.

Donc peut être ne faire apparaître que le code dans A et les formules se chargent de remplir le reste automatiquement mais est-ce faisable?

Merci

Bonjour,

Sans fomulaire et sans formule avec une saisie intuitive des premières lettres du nom ou du code

Boisgontier

Merci de la réponse mais ce n'est pas ma demande, le fait de saisir le code revient au même qu'avant et dans une liste de 3 milles noms c'est pas simple, pour l'exemple je n'avais mis que quelques noms

Merci quand même

Lionel

La saisie des noms est intuitive. On ne frappe que les premières lettres du nom.

J'ai la même chose pour 36.000 noms de communes.

Boisgontier

Oui l'idée est très bien aussi, mais la saisie est a certains moments faite avec un scanner a main ou un lecteur rfid ou un lecteur qr c'est pour cela que je dois garder les formules

Re, oui c'est tout à fait ça que je veux faire tu as parfaitement exhaussé mon souhait pour le bouton CODE

En fait j'ai besoin de garder les formules pour la douchette et les codes barres ou QR quand je ne me sers pas du bouton CODE

et je verrouille la page d'une part pour éviter d'effacer les données ou les formules et pour faire un saut automatique de A vers H parce que les données qui vont dans H et I viennent également d'un code barre ou qr, cela évite un maximum les manipulations clavier.

Donc peut être ne faire apparaître que le code dans A et les formules se chargent de remplir le reste automatiquement mais est-ce faisable?

Merci

Bonjour,

C'est faisable oui de ne mettre que ce qu'il y a dans la colonne A et de garder tes formules, le passage de la colonne A je l'avais géré dans mon codage, après que tu sortes d'une cellule dans la colonne A, ça te mettait à la colonne H, et de la colonne H à la colonne I

Sachant que tes infos viennent de ta base de données, cette feuille ne fait que consulter tes données, les seules cellules qui sont vraiment supprimables ce sont celles dans les colonnes H et I. La dernière solution que je t'ai donné ne te vas donc pas au final?

Désolé je suis long à comprendre, j'ai compris que les infos étaient remplies via des douchettes mais je ne comprends toujours pas pourquoi garder les formules alors que mon codage fait la même chose

Bonjour et merci de ta réponse,

Dans la colonne A, H et I je dois pouvoir écrire le numéro de code soit au clavier, soit avec la douchette, soit avec le lecteur rfid ou le bouton code, il faut aussi que peu importe le méthode utilisée les lignes ne soient pas écrasées par le changement de méthode

Je pense que c'est faisable mais a part les formules je n'en vois pas le moyen je ne connais pas le VBA et ses possibilités

Si tu as des idées, des exemples je suis preneur

Merci beaucoup de ton aide

Lionel

Rebonjour

Avec la solution du code ça va écrire pile après la dernière ligne remplie, donc pas d'effacement de données, avec la solution automatique, ça va remplir et quand tu valides ça met directement ton curseur au bon endroit, pas d'effacement de données avec cette solution, que ce soit écrit manuellement, par programme, ou par code, Excel devrait tout traiter de la même façon

Tu pourras tester pour me dire si le dernier fichier que je t'avais transmis fonctionne avec?

ça n'efface la ligne que si tu enlèves le code dans la colonne A

Quand tu le dis c'est magique

Merci

Je viens de tester, tout marche impec, douchette ok, rfid ok, code manuel ok

Mais et c'est un oubli de ma part, parfois je n'ai pas de code, je rentre toutes les infos en manuel, dans ce cas précis la colonne A reste vide et là j'ai un écrasement de ligne si j'utilise le bouton code juste après, il écrit à partir de la première cellule vide selon moi, est il possible de remédié à cela

Tu y es presque, ton aide est inestimable merci

Je peux modifier ça bien sûr

Il me suffit de voir sur toutes les colonnes, quel est le numéro de ligne le plus grand, et l'utiliser

Je ne sais pas si je comprends bien "le numéro de ligne le plus grand"

Dans mon tableau d'origine j'ai 4000 lignes est-ce important d'avoir le nombre exact parce que ça changera dans le futur

Non non je te rassure, en fait je vais chercher par code le numéro de la dernière ligne remplie dans la colonne A, tu peux avoir 10 000 lignes, ça marchera toujours

Parfait, j'attends avec impatience, je vais essayer de comprendre ton code vba pour m'y mettre c'est génial ce que l'on peut faire avec

Rechercher des sujets similaires à "vba saisie automatique"