Améliorer une macro basic Excel

Bonjour,

Suite à un tuto trouvé sur le net, j'ai réalisé sous Excel un formulaire de saisie avec une macro qui enregistre dans une feuille spécifique le résultat de cette saisie.

Ce formulaire dont l'objet est de récupérer des informations relatives aux personnes susceptibles d'être intéressées par notre association comporte en fait 2 parties :

- 1ère partie : l'identité de ces personnes composée de 3 cellules : la civilité (liste déroulante : M., Mme et Mlle), le nom et le prénom

- 2ème partie : les différents contacts autorisés par la personne (n° de tel fixe et ou mobile, et ou adresse mail, et ou adresse postale)

J'ai créé de façon basique ma macro avec la solution d’Excel (enregistrer une macro), n'ayant aucune notion de VBA...

Pour autant, je veux améliorer cette macro de la façon suivante:

1 - introduire un contrôle sur la présence de tous les éléments d'identification (les cellules "civilité", "nom" et "prénom" doivent impérativement être renseignées).

2- introduire un autre contrôle sur la présence d’au moins un mode de contact (présence à minima de l’adresse mail ou d’un des n° de téléphone, ou du code postale)

A mon sens, les lignes de codes de ses contrôles devront être positionnées avant ce qui a été généré par Excel mais elles devront inclure l’arrêt de la macro si ceux-ci ne sont pas positifs.

D’autre part, je souhaite dans la mesure où ceci serait possible que les zones nom et prénom soient traitées de la façon suivante :

  • Zone nom : restitution de la saisie quel qu’elle soit en majuscule
  • Zone prénom : restitution de la saisie avec l’initiale en majuscule et le reste en minuscule (exemple : saisie = PIERRE ou pIERRE ou …, restitution = Pierre, saisie = PieRRe-françois ou …, restitution = Pierre-François)

Comme je vous l’ai dit, je n’ai aucune vision de ce qu’il est possible de faire avec Excel, mais je pense que mes demandes devraient trouver une réponse !

Merci d’avance pour votre aide.

Bien cordialement.

Pedro38

Bonjour,

Voici une version à peine modifiée

17gestbd-pedro.xlsm (59.43 Ko)

d'un modèle en téléchargement...

Vous ne devez pas supprimer le premier enregistrement, mais vous pouvez sois le modifier intégralement, soit effacer toutes les cellules de la ligne 2.

Pour changer la civilité dans le formulaire il suffit de cliquer dessus...

A+

Bonsoir galopin01 !

Vous devriez changer votre signature ! Afin d'être "raccord" avec elle !
Perso je lui ai envoyé un MP pour lui demander de le faire...

@ bientôt

LouReeD

Salut,

Oui c'est un peu paradoxal, mais c'est quand même plus ou moins mon attitude.

Cependant dans ce cas comme je n'ai rien eu à faire que de modifier une ligne du "Fil rouge sur les tableaux structurés" je n'ai pas résisté...

Pour le reste je me refuse assez à contribuer quand visiblement il s'agit de faire "à la place de..." et depuis plus de 20 ans que je me balade sur les forums, j'en plus que marre de demander le fichier joint.

Donc cette signature est aussi une bonne piqure de rappel pour tous ceux qui ne lise même pas les recommandations mais qui papillonnent de fil en fil. Au moins il ne peuvent pas ignorer cette nécessité.

A+

Bonjour Galopin01, bonjour LouReeD,

Tout d'abord, mille excuses pour cette réponse tardive due à une méconnaissance totale du fonctionnement de ce site: j'ai été très long à comprendre comment il fallait procéder pour "faire une réponse". A un tel point que ceci est le 2ème jet de celle-ci, le 1er jet n'ayant pas été pris en compte lors de son envoi, suite je pense à un pb de time out!

Par ailleurs, je tiens également à vous dire que j'avais bien pris connaissance de la charte de ce forum (A lire avant de poster), mais que si je n'ai pas joint le .xlsm de mon sujet, c'est que (bêtement peut-être) je pensai que mon texte était suffisamment claire pour vous permettre de m'aider.

Il n'ai pas dans mon intention de vous demander de "faire à ma place" ! Galopin01, je comprends très bien ta remarque et ton exaspération.

Comme je vous l'avais indiqué, je n'ai jamais programmer en VBA,. Je pensais (là encore, bêtement peut-être) qu'il existait des routines simples qui permettraient de résoudre les quelques besoins que j'évoquais, et que vous pourriez m'aider par quelques conseilles à les introduire dans ma macro. Mon objectif, vous l'avez compris, c'est que je veux faire moi-même, tout en comprenant ce que je fais ! Mais si l'envoi de ce .xlsm vous faciliterait la vie, pas de problème pour que je vous le joigne ! Sauf que ne trouvant pas la fonctionnalité "pièce jointe" dans cette fenêtre de messagerie, il faudra me dire comment pratiquer...

Enfin, merci Galopin01 pour le fichier que tu m'a mis à disposition. Si il couvre une bonne partie de mon besoin, il n'est pas complet pour moi. D'où mon souhait de poursuivre dans mon idée d'amélioration de ce que j'ai déjà fait.

D'autre part, LouReeD tu évoques dans ton message un MP que tu m'aurais envoyé. De quoi s'agit-il? Je n'ai en tout cas rien reçu de ta part.

En résumer donc, je suis désolé de ne pas avoir été à la hauteur de vos attentes lors de la formulation de ma demande, et je vous remercie d'avance pour l'aide que vous pourrez m'apporter si vous en êtes d'accord.

Bien cordialement.

Pedro38

Je pense avoir trouver le moyen de vous faire parvenir mon fichier .xlsm

7shema-saisie.xlsm (26.62 Ko)

Merci encore.

Bien cordialement.

Pedro38

Ma réponse ne se voulait pas désobligeante. De plus tu as écris le mot clef "association."

On peut parfaitement être bénévole et ne pas "causer le VBA première langue" :

C'est pourquoi j'ai voulu te donner un outil basique mais fiable et robuste pour démarrer sans avoir à réinventer la roue...

A+

Bonjour Pedro38 et le forum
Voici en PJ ma modeste participation

Cdt

Henri

9pedro38.xlsm (31.86 Ko)

Bonjour Henri,

Merci pour votre contribution (pas si modeste que ça!) à la résolution de mes souhaits !

Comme vous l'avez compris suite à mes messages, j'aime bien comprendre les choses... J'essaie donc de voir comment vous avez résolu mes besoins tant vis à vis de l'obligation de saisie de certaines zones, que du formatage du contenu des zones. Mais je n'arrive pas à trouver ni vos actions, ni les endroits d'implantation de celles-ci.

Pouvez-vous m'orienter?

Merci d'avance.

Pedro38

Bonjour Pedro38 et le forum,
Les codes que j'ai écrits sont très basiques et faciles à comprendre.
Pour les visualiser: Clic droit sur l'onglet "Formulaire de saisie" et cliquer sur "visualiser le code" ou bien ALT + F11. Pour revenir ALT +F11 également ou ALT + Q

Ci-joint une version Bis à laquelle j'ai intégré une autre grille pour modifier un enregistrement. Recherche par liste déroulante en H3. Seules les cellules blanches sont accessibles. J'ai inséré une nouvelle colonne à gauche dans l'onglet "Contact NA" intitulée N/P (Nom Prénom) qui sert pour la liste déroulante en H3.

La feuille "Formulaire de saisie" est protégée sans Mot de Passe.

13pedro38bis.xlsm (34.44 Ko)

Cdt

Henri

Bonjour Henri, et encore merci pour vos explications, et le complément que vous m'avez fourni !

Ceci m'a permis de comprendre pas mal de choses...

Maintenant que mon classeur est OK, je veux le mettre à disposition sur le Drive de notre association. l'idée étant de donner l'accès à ce classeur via la fourniture de l'URL ou du QR Code correspondant. Mais le 1er essai que je viens de faire n'est pas concluant. Il me semble que tout ce qui est en lien avec VBA n'est pas pris en compte lorsque j'active mon classeur sur ce Drive sous Google Sheets. Par exemple, le bouton "Enregistrement de la saisie" qui déclenche la macro VBA n’apparaît pas à l'écran.

S'avez-vous comment il faut faire pour mettre un tel classeur excel à disposition sur le web?

Encore merci pour votre aide.

Bien cordialement.

Pedro38

Bonsoir,

en effet il me semble que GoogleSheet est incompatible avec les macros VBA, c'est un peu pour cela que je n'ai qu'une application disponible sur la partie du site d'ici consacrée à ce système.

@ bientôt

LouReeD

Bonsoir Pedro38 et le forum,

Désolé, mais cela dépasse mes petites compétences.
Je laisse un autre contributeur vous venir en aide.
Bon courage pour votre association. Je suis également un responsable local d'une association nationale (AFEH).
Henri

Rechercher des sujets similaires à "ameliorer macro basic"