Mini utilitaire de saisie en VBA

Bon­jour à tous,

Pour con­stru­ire un pro­to­type de saisie des­tiné à un usage lim­ité, voici une petite procé­dure qui peut ren­dre de grands ser­vices. Cet exem­ple ne per­met que la saisie, mais pas la mod­i­fi­ca­tion ou la sup­pres­sion de don­nées.

Cet exem­ple sert à démon­tr­er l’u­til­i­sa­tion de cer­taines fonc­tion­nal­ités du VBA en inter­ac­tion avec Excel.

On notera :

  • Util­i­sa­tion d’une vari­able pour iden­ti­fi­er la nou­velle ligne à saisir.
  • Util­i­sa­tion de noms de plages défi­nis dans Excel pour ren­dre l’ap­pli­ca­tion robuste. Par exem­ple, l’a­jout, la sup­pres­sion, la mod­i­fi­ca­tion ou le déplace­ment de lignes ou de colonnes est pos­si­ble dans une large mesure. A l’in­verse, si vous aviez util­isé des références sta­tiques du style Range(“D2”), celles-ci ne sont pas du tout robustes en VBA-Excel.

Voici une petite vidéo qui démon­tre la con­struc­tion du fichi­er :

On peut aller une étape plus loin en créant une boucle qui va par­courir toutes les colonnes. Dans le fichi­er joint (mais pas dans la vidéo), j’ai aus­si géré le fait de met­tre la table de don­nées dans une autre feuille :

De plus, en trans­for­mant la plage en tableau, l’a­jout des lignes étend automa­tique­ment le tableau vers le bas.

Pour ajouter un nou­veau champ, il faut sim­ple­ment définir deux noms et mod­i­fi­er le code VBA en ajoutant le nom du champ dans l’ar­ray:

  • Saisie_NomNouveauChamp
  • Col_ Nom­Nou­veauChamp
  • arr­Colonnes = Array(“Nom”, “Prenom”, “Ville”, “Code­Postal”, ” Nom­Nou­veauChamp”)

Bonne con­tin­u­a­tion.

En cadeau de bien­v­enue : les 7 com­bi­naisons de touch­es indis­pens­ables sur Excel
Pour marque-pages : permalien.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.