Gestion base données excel pour commerciaux

PERSEVERANT

XLDnaute Junior
Bonsoir à toutes et tous,
je me suis lancé dans un projet, pour faciliter le travail de mes collaborateurs, qui dépasse mes capacités en informatiques. Je viens donc sur ce forum chercher l'aide de gens bien plus compétents que moi.

Mon sujet est le suivant, créer une base de données sous excel 2010, dont vous trouverez ci-joint le modèle, qui permette à des commerciaux de faire des devis et de les modifier au gré des fantaisies de leurs clients.

La base se crée dans un onglet BD alimenté en seconde ligne par les saisies faites dans l'onglet Saisie.
Un onglet Consultation permet de revoir et de modifier, si besoin en est, les données déjà renseignées.
Cet onglet consultation doit pouvoir afficher des données déjà existantes dans l'onglet BD. J'utilise pour celà la fonction index.

Et c'est la que les choses se corsent pour moi.

Je voudrais pouvoir accéder à un enregistrement précis dans BD pour alimenter toutes mes cellules de Consultation. Ma base étant alimentée tout au long de la journée, elle n'est donc pas triée. Je pensais pouvoir sélectionner cet enregistrement précis au travers de 3 critères, le Nom du client, la Date de départ et la Destination. Mais je suis incapable de mettre en place les formules qui me permettraient d'avoir 3 listes déroulantes en cascade pour filtrer mes enregistrements de BD. Le Nom des clients revient plusieurs fois, il me faut donc une liste déroulante sans doublon. Cette première sélection devrait me permettre de créer une seconde liste déroulante avec les Dates de départ correspondant uniquement au client sélectionné, et au cas ou il y aurait plusieurs devis avec le même client à la même date de finir la sélection par la Destination.

Une fois ces trois critères définis, je ne devrais plus avoir qu'un seul enregistrement correspondant à mes besoins, je pourrais alors récupérer le N° de l'enregistrement pour alimenter mes diverses cellules.

Suis-je déraisonnable en pensant que tout ceci est réalisable ? J'évite autant que faire se peux le VBA, mais si je dois y passer...

Par avance merci de vos remarques et suggestions, je patauge depuis deux semaines et n'ai pas su résoudre mon problème.

Cordialement
PERSEVERANT
 

Pièces jointes

  • test base de données tourisme.xlsm
    123.6 KB · Affichages: 116
  • test base de données tourisme.xlsm
    123.6 KB · Affichages: 62

ChTi160

XLDnaute Barbatruc
Bonjour Jean Michel
Bonjour le Fil ,Le Forum
Tu dis : "Elle est stockée dans le même dossier que mon classeur excel."
c'est pas indispensable , ce qui est important c'est que le Fichier soit enregistré, d'ou qu'il soit , dans le Dossier des"Macro Complémentaire d'Excel" en"*. xlam"
Ainsi , tu peux utilisé cet utilitaire quelque soit le Classeur utilisé !
je pense qu'une installation facile et efficace est nécessaire ! Lol
Bonne fin de Journée
Amicalement
Jean marie
 

Dranreb

XLDnaute Barbatruc
Je rectifie: Ce n'est pas important que ce fichier là, (ni le GigIdx d'ailleurs, joint par erreur, mais très utile aussi dans d'autres contextes) soit enregistré dans le dossier des Macro Complémentaire d'Excel, parce qu'il ne contient notamment aucune fonction destinée à être utilisée dans des formules de feuilles de calcul. Ça offre juste une facilité pour l'ouvrir depuis Excel, en cochant le complément, en vue de cocher ensuite surtout sa référence dans une nouvelle application. En revanche il est important qu'il n'encombre pas les fenêtres Windows puisque ce n'est qu'une fourniture de services VBA. Il est ouvert automatiquement du moment qu'il est en référence dans un projet. Aussi faut il simplement qu'il soit accessible au chemin enregistré lors de sa mise en référence.
 

ChTi160

XLDnaute Barbatruc
Re
peut être un début d'explication sur la non reconnaissance du Chemin d'enregistrement ????
lorsque je fait l'enregistrement manuel dans le Dossier des "Macros Complémentaires"
J'ai dans le Chemin un UserName "Jean marie Gxxxxxs" qui ne correspond pas à celui du Dossier "JMG" (les x sont les lettres de mon nom)
Ai je ? un jour , modifié le Nom du Dossier UserName , je ne sais pas !
Puis je le modifié et remplacer "JMG" en "Jean marie Gxxxxxs"
ceux qui pourrait Expliquer et résoudre le problème du chemin incorrect .
Voir Image jointe :
j'attends une réponse pour ce qui est de la Modification du Nom du Dossier.
Bonne fin de Journée
 

Pièces jointes

  • Adresse d'enregistrements.jpg
    Adresse d'enregistrements.jpg
    40.4 KB · Affichages: 40

PERSEVERANT

XLDnaute Junior
Je rectifie: Ce n'est pas important que ce fichier là, (ni le GigIdx d'ailleurs, joint par erreur, mais très utile aussi dans d'autres contextes) soit enregistré dans le dossier des Macro Complémentaire d'Excel, parce qu'il ne contient notamment aucune fonction destinée à être utilisée dans des formules de feuilles de calcul. Ça offre juste une facilité pour l'ouvrir depuis Excel, en cochant le complément, en vue de cocher ensuite surtout sa référence dans une nouvelle application. En revanche il est important qu'il n'encombre pas les fenêtres Windows puisque ce n'est qu'une fourniture de services VBA. Il est ouvert automatiquement du moment qu'il est en référence dans un projet. Aussi faut il simplement qu'il soit accessible au chemin enregistré lors de sa mise en référence.

Soyez rassurés tous les deux, ça j'avais compris, je l'ai mis la parce que c'est plus facile pour moi de le retrouver si besoin en était.
Pour ce qui est de la remarque de Jean Marie, en #91, je ne peux qu’acquiescer, facile est le mot juste. Vous comprenez sans doute mieux pourquoi au début de ces échanges j'étais plus amateur de peu de VBA.
Amitiés
Jean Michel
 

Dranreb

XLDnaute Barbatruc
Hmm hmm… Donc "C:\Users\" & Application.UserName & "\AppData\Roaming\Microsoft\AddIns" peut ne pas donner le bon chemin, si je comprends bien.
Si quelqu'un me donnait un moyen simple et fiable de le trouver, ce chemin, ça m'intéresserait.
Je m'y perds entre des "%APPDATA%", l'API SHGetSpecialFolderPath et autres Shell ou quoi…

Oh con… Je crois que je le tiens, c'est tout simplement Application.UserLibraryPath
Pouvez vous vérifier ?
 
Dernière édition:

Dranreb

XLDnaute Barbatruc
Voilà de quoi tordre le coup à la nuance 'Complément Excel' ou 'Macro complémentaire'
Du coup, au vu de ce nom de propriété j'appelle ça maintenant une 'Bibliothèque personnalisée'
C'est mieux que 'bibliothèque de l'utilisateur'
 

Pièces jointes

  • CBxL.xlsm
    120.6 KB · Affichages: 45
  • GigIdx.xlsm
    62.5 KB · Affichages: 40

PERSEVERANT

XLDnaute Junior
Voilà de quoi tordre le coup à la nuance 'Complément Excel' ou 'Macro complémentaire'
Du coup, au vu de ce nom de propriété j'appelle ça maintenant une 'Bibliothèque personnalisée'
C'est mieux que 'bibliothèque de l'utilisateur'

J'ai échangé les deux fichiers CBxl et Gigldx.
ils sont tous les deux liés au projet VBA
mais pas de changement à l'ouverture de la feuille Consultation !
Jean Michel
 

ChTi160

XLDnaute Barbatruc
Re "Dranreb"
Tu n'as pas répondu à ma demande , penses tu ? que je puisse changer le Nom du Fichier "des Macros Complémentaires" de GJM en Jean marie Gxxxxxs
j'avais pensé , te demander si cela ne pouvais avoir une solution avec une Adresse du Genre Application.TemplatePath (que j'utilise pour charger un modéle .xltm) et je crois comprendre que tu y as pensé et trouvé Lol
je vais tester les nouveaux fichiers Joints au #96
je viens de tester Application.UserLibraryPath et cela correspond au nom de mon fichier "GJM"
Bonne fin de Journée
Amicalement
Jean marie
 
Dernière édition:

ChTi160

XLDnaute Barbatruc
Re "Dranreb"

j'ai facilement enregistré , le Fichier CBxl , Ok donc pour le chemin , j'ai constaté que le Libellé dans Atteindre avait changé il est passé de CBxl à "ComboBox Liées" plus Clair .
Demande : Quel fichier puis je utiliser pour tester ?
Merci par avance
Amicalement
Jean marie
 

ChTi160

XLDnaute Barbatruc
Re Lol
Non je voulais dire un fichier de données Lol
Mais bon , j'avais jusqu’à aujourd’hui , peur d'utiliser ton Fichier , mais voila je me suis lancer deux colonnes de Données , Un Userform , deux Combo , une vérification que "Comboboxs Liées" était bien cochée dans atteindre "Compléments Excel"
lecture de l'aide , Copie de l'exemple , puis modification des Noms des Combobox dans mon Userform.
Outils /Références , je coche "CBxl" et en route .
affichage du Userform et la , deux ComboBox au Fond Bleu , Remplis de mes données et qui en plus Son Liées Lol
Ca ne pouvait pas être plus simple .
Merci "Dranreb" pour ce joli cadeaux
En espérant que Jean Michel , puisse arriver à ses fins .
Bonne fin de Journée
Amicalement
Jean marie
 
Dernière édition:

ChTi160

XLDnaute Barbatruc
Re
Bon quand je teste ,je teste Lol
j'ai remarqué , que lorsque que je sélectionne une donnée dans le Combobox 1 , que je sélectionne une correspondance dans le Combobox 2
si je vais dans Combobox 1 et que je sélectionne une autre Donnée ,le Combobox2 se rempli bien ,mais conserve dans sa propriété "Text" laffichage du texte de la sélection précédente , même si elle n'est pas présente dans la nouvelle Liste de Sélections ?
Ce problème , je l'ai déjà rencontré avec l'utilisation De Combobx2.Clear , qui ne prends pas en compte la Propriété Combobx2.Text d'ou mon utilisation des Deux cumulées :
VB:
With .ComboBox 2
                              .Text=""
                              .Clear
                             .List=Tablo ' par exemple
End With
Mais je le répète je ne suis pas un pro Lol
y'a peut être une autre Solution .
Bonne fin de Journée
Amicalement
Jean marie
 

Dranreb

XLDnaute Barbatruc
Pour qu'il ne puisse pas subsister de valeur d'une ComboBox disparue de sa nouvelle List, il convient d'avoir mis à True la propriété CorrespRequise. Sinon une valeur induite par les autres choix n'y est en principe quand même pas conservée, à moins d'avoir cliqué dedans entre temps. Mais alors son fond devient rougeâtre si on a exécuté la méthode CouleursSympa. Tout dépend si c'est de la consultation ou de la mise à jour devant permettre d'entrer des valeurs inexistantes.
Il faut éviter de modifier les ComboBox prise en charge par l'objet ComboBoxLiées. Cela provoque une recherche, et l'effacement peut être annulé si par exemple il contient le seul choix possible compte tenu de ceux effectués dans les autres ComboBox. L'objet est muni d'une méthode Nettoyer qui efface toutes les ComboBox.
Si on veut pouvoir en prendre le contrôle et modifier leurs List etc., il possède aussi une méthode Stopper à invoquer préalablement. (rubrique POUR UTILISATION AVANCÉE de l'aide)
 
Dernière édition:

Dranreb

XLDnaute Barbatruc
Bonjour
Suite aux observations, j'ajoute en colonne D de la feuille Aide CBxL ces quelques points sans rapport avec l'installation ni la programmation.
Quelques règles concernant les réactions des ComboBox gérées​
Une combobox garde la liste qu'elle avait avant le choix, non restreinte par les choix ultérieurs des autres.
Elle garde sa valeur même ne figurant plus dans la nouvelle liste qui lui est attribuée, sauf :
1) — Si CL.CorrespRequise a été mis True
2) — Si elle était assumée, ce qui est signalé en vert profond si CL.CouleurSympa à été demandé.​
Cependant avec CouleurSympa l'inexistant ainsi conservé est signalé en rouge clair.
Cliquer dedans alors que sa valeur est assumée la fige. Elle passe en vert fluorescent avec CouleurSympa.
 
Dernière édition:

Discussions similaires

Réponses
6
Affichages
256

Statistiques des forums

Discussions
311 725
Messages
2 081 944
Membres
101 849
dernier inscrit
florentMIG