VBA - Ajout et Modification de ligne via listbox Le sujet est résolu

Y compris Power BI, Power Query et toute autre question en lien avec Excel
Avatar du membre
thev
Membre impliqué
Membre impliqué
Messages : 2'553
Appréciations reçues : 215
Inscrit le : 13 juin 2016
Version d'Excel : 2019 FR 64 bits

Message par thev » 17 novembre 2017, 15:57

ci-jointe nouvelle version
Liste Client3.xlsm
(131.84 Kio) Téléchargé 17 fois
t
thebenoit59
Membre fidèle
Membre fidèle
Messages : 436
Appréciations reçues : 10
Inscrit le : 21 juin 2016
Version d'Excel : 2016

Message par thebenoit59 » 17 novembre 2017, 16:11

klaaus a écrit :Merci Benoit pour ton idée. Malheureusement, je veux vraiment avoir un "logiciel" complet et donc une fois fini, ne plus passer par le classeur. Je vais essayer d'appliquer la méthode de Thev qui correpond mieux à ceux que je veux faire. Je n'ai cependant aucun doute sur le fait que ta méthode pourra convenir à d'autres personnes et donc les aider :)
Encore une fois, merci tout de même de m'avoir proposer ta méthode qui fonctionne tout aussi bien !
Je ne comprends pas ce que tu entends ne pas passer par le classeur ...
A aucun moment je ne passe par le classeur en lui même sauf pour récupérer et inscrire les données, ce qui est obligatoire.

Je n'utilise aucun calcul, même pour noter le numéro de client.
Je ne suis pas certain que tu as étudié ma proposition, ou peut-être les boutons sur la feuille t'ont embêté. Ils ne sont là que pour tester les macros au lieu de devoir ouvrir à chaque fois la première fenêtre.
k
klaaus
Jeune membre
Jeune membre
Messages : 37
Inscrit le : 20 février 2015
Version d'Excel : Excel 2016

Message par klaaus » 17 novembre 2017, 16:32

Merci beaucoup Thev, ça fonctionne parfaitement !

Benoit : Lorsque je veux lancer l'UserForm, j'ai un message d'erreur qui s'affiche à chaque fois que je veux lancer un Userform. Je pensais donc qu'il fallait obligatoirement passer par les boutons que tu avais mis sur le classeur. Mais si normalement je suis censé pouvoir lancer les Userform même en passant par la première fenêtre, il doit donc y avoir un problème quelque part car j'ai l'erreur d'execution 91 qui s'affiche dès que je veux lancer "NouveauClient" (bouton de droite sur l'UserForm accueil) ou bien quand je veux lancer "ListeClient" en cliquant sur le bouton Fichier Client, le bouton à gauche de l'UserForm "Accueil".
C'était pour cela que je pensais ne pas utiliser ta solution, car avec ces bugs, j'étais obligé d'utiliser les deux boutons situés sur le classeur.
t
thebenoit59
Membre fidèle
Membre fidèle
Messages : 436
Appréciations reçues : 10
Inscrit le : 21 juin 2016
Version d'Excel : 2016

Message par thebenoit59 » 17 novembre 2017, 16:45

Il faut lancer la procédure depuis le module 2. Tu as deux procédures soit listClient soit newClient.
Tu peux rattacher ces procédures à tes boutons avec Call listClient ou Call newClient.
Ça me permet d'éviter de doubler l'enregistrement dans les dictionnaires.
k
klaaus
Jeune membre
Jeune membre
Messages : 37
Inscrit le : 20 février 2015
Version d'Excel : Excel 2016

Message par klaaus » 17 novembre 2017, 16:57

D'accord, je vais essayer cette méthode aussi alors, ça m'en apprendra un peu plus sur la VBA !
En tout cas merci à vous deux :)
t
thebenoit59
Membre fidèle
Membre fidèle
Messages : 436
Appréciations reçues : 10
Inscrit le : 21 juin 2016
Version d'Excel : 2016

Message par thebenoit59 » 17 novembre 2017, 18:31

Le fichier quelque peu modifié.
. Fonctionne avec ton userform principal.
. Recherche en tapant directement dans le textbox, plus besoin d'appuyer sur Rechercher (qui ne sert plus maintenant)
. Quand tu crées ou modifie un client et que ta fenêtre Liste est ouverte, actualisation de la liste pour afficher les nouveaux clients

Je peux également te proposer une fonction pour vérifier les valeurs indispensables lors de la création d'un client.
Tu peux également limiter tes textbox à des caractères numériques par exemple (code postal, téléphone).
Liste Client2 %284%29.xlsm
(113.77 Kio) Téléchargé 19 fois
k
klaaus
Jeune membre
Jeune membre
Messages : 37
Inscrit le : 20 février 2015
Version d'Excel : Excel 2016

Message par klaaus » 18 novembre 2017, 09:55

Merci ! J'ai regardé ton fichier et du coup, il y avait un bug sur la recherche ! Tu avais mis
j = Me.Criteres.ListIndex + 1
et du coup la recherche était décalé, mais en regardant le code, j'ai réussi à modifier ça et ça marche parfaitement :) Je vais garder cette fonctionnalité qui me permet de ne plus à avoir à cliquer sur rechercher et me permet d'avoir les résultats au fûr et à mesure !
Concernant les valeurs indispensables et le fait de limiter les textbox à des données numériques, je ne pense pas les utiliser ici, mais je suis curieux de connaître le code pour faire cela à l'avenir :)
Si tu as le temps, je suis donc preneur :)
Encore merci !
t
thebenoit59
Membre fidèle
Membre fidèle
Messages : 436
Appréciations reçues : 10
Inscrit le : 21 juin 2016
Version d'Excel : 2016

Message par thebenoit59 » 20 novembre 2017, 08:59

Voilà la version avec la vérification des contrôles lors de la création ou modification de client.
Tu peux modifier les contrôles à tester dans la fonction, également pour la couleur de fond.
Pour le numéro de téléphone, n'est accepté que les chiffres et ".".
La tabulation a été modifiée pour se déplacer plus facilement dans les différents contrôles.
Liste Client - Vérif contrôles et numériques.xlsm
(130.21 Kio) Téléchargé 26 fois
k
klaaus
Jeune membre
Jeune membre
Messages : 37
Inscrit le : 20 février 2015
Version d'Excel : Excel 2016

Message par klaaus » 20 novembre 2017, 14:40

Merci beaucoup ! Je vais essayer de m'inspirer de tout ça pour finir mon logiciel :) !
Répondre Sujet précédentSujet suivant
  • Sujets similaires
    Réponses
    Vues
    Dernier message