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

Dranreb

XLDnaute Barbatruc
Bonjour.
ChtTi160, pourrais-tu joindre le CBxL que tu a récupéré ?
J'avais essayé des tas de chose plus ou moins satisfaisantes dans son ThisWorkBook, testant sa propriété IsAddin lors de son ouverture, et ce que tu décris me donne à penser que tu est tombé sur une version munie d'un dispositif que j'aurais dû garder …je crois :rolleyes:. Mais je ne l'ai plus :(
 

ChTi160

XLDnaute Barbatruc
Bonjour Dranreb
Bonjour le Fil ,"Jean Michel"
Bonjour Le Forum

ci joint le fichier que je pense être celui que j'ai installé ! (j'en ai plusieurs lol)
bonne journée
Merci du travail que tu partages avec nous !
Bonne journée
Amicalement
Jean marie
Tiens moi au courant Lol
 

Pièces jointes

  • CBxl Dranreb.zip
    140.1 KB · Affichages: 66

ChTi160

XLDnaute Barbatruc
Bonjour Dranreb
Bonjour le Fil ,"Jean Michel"
Bonjour le Forum

C'est apparemment , une version que j'ai enregistré le 27/03/2017
je vais voir ce que je peux faire Lol
Merci pour ce que tu partages avec nous !
Bonne journée
Amicalement
Jean marie
 

Dranreb

XLDnaute Barbatruc
Merci.
Effectivement il se met IsAddin = True lors de la fermeture, qu'il Cancel jusqu'à 3 fois maxi, et invite à procéder à son enregistrement depuis VBA, puisqu'il n'est alors plus visible depuis Excel. Et cela peut conduire à son enregistrement en le bon type de fichier, sur le bon répertoire.
ThisWorkbook :
VB:
Option Explicit
Private NbCancel As Long
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Me.IsAddin = True
If LCase$(Right$(Me.Name, 5)) <> ".xlam" Then
   MsgBox "Veuillez enregistrer ce fichier depuis VBA comme Macro complémentaires Excel (*.xlam)" _
      & vbLf & "de préférence nommé ""CBxL.xlam"".", vbCritical
   Cancel = NbCancel < 3: NbCancel = NbCancel + 1
ElseIf Not Me.Saved Then
   If MsgBox(Me.Name & " Changé. Enregistrer ?", vbYesNo) = vbNo Then Exit Sub
   Me.Save: End If
End Sub
Mais j'ai peur que ce soit un peu perturbant, parce qu'il me semble que l'enregistrement sous ce type de fichier ne se substitue pas, en place, à la version .xlsm.
Je ne sais plus quoi faire…
 

ChTi160

XLDnaute Barbatruc
Re
je ne suis pas un expert Lol
Mais je crois que ce que tu mets en doute est effectif :
Mais j'ai peur que ce soit un peu perturbant, parce qu'il me semble que l'enregistrement sous ce type de fichier ne se substitue pas, en place, à la version .xlsm.
Je ne sais plus quoi faire…
je crois que le fichier se substitue , en place, à la version .xlsm.
d'ou mes deux fichiers joints : une copie du fichier initial et le Fichier "*.xlam" , résultat de ma manœuvre Lol
veux tu que je refasse la manoeuvre lol , pour voir le résultat et confirmer ou infirmer le résultat ?
Enfin, j'espère avoir pu t' être utile ! Lol
Bonne Journée
Amicalement
Jean marie
 

Dranreb

XLDnaute Barbatruc
Ah oui, si tu as envie de participer à la définition de la politique d'une programmation d'installation satisfaisante pour le plus grand nombre, sans forcer personne, et en refaisant des vérification sur ce qui se passe dans telle ou telle hypothèse, bien sur que ça m'intéresse :)
J'étais un peu dans le flou parce que chez moi, en l'enregistrant en xlam depuis Excel, ça ne le remplace pas, il est toujours ouvert en xlsm et on risque de mettre son projet en référence dans celui d'un classeur d'application, et d'avoir par la suite, du fait qu'il est ouvert automatiquement, toujours ce classeur visible dans les pattes jusqu'à fermeture de la session, à devoir le fermer manuellement. C'est surtout ça que je veux éviter.
 
Dernière édition:

PERSEVERANT

XLDnaute Junior
Chez moi quand je fais Enregistrer sous, et que je sélectionne comme type de fichier
"Complément Excel (*.xlam)" à la place de
"Classeur Excel (prenant en charge les macros) (*.xlsm)" il me change d'office le chemin en:
Windows (C: ) › Utilisateurs › MoiMême › AppData › Roaming › Microsoft › Addins
Et si j'accepte ce chemin, je le retrouve dans les compléments.
Si ça ne fait pas pareil chez vous ce n'est pas grave, il suffit d'ouvrir le CBxL.xlam là où vous l'avez enregistré. On n'en a pas besoin, au bout du compte, en tant que complément Excel, seulement en tant que référence VBA.
Normalement il ne doit pas être visible. Si, étant enregistré avec l'extension .xlam il demeure visible chez vous, ne manquez pas de me le signaler.

Bonsoir Dranreb
bonsoir à tous
je vais regarder ça pendant le week-end, je crois (mais je vais vérifier) que mon système ne me propose pas la possibilité XLAM.
Merci
Cordialement
Jean Michel
 

PERSEVERANT

XLDnaute Junior
Bonsoir Jean Michel
Bonsoir Le Fil ,"Dranreb"
Excuse pas assez rapide , effectivement plusieurs solutions , moi j'ai choisit la plus simple Lol
je suis loin d'arriver à la cheville de "Dranreb" lol
Mais voila, comment j'ai fait pour enregistrer le Fichier en "*.xlam"
Après l'avoir téléchargé , je l'ai enregistrer dans un Dossier dans mes documents (chez moi , pour pouvoir le retrouvé ).
Puis j'ai double Clicker dessus , il s'est automatiquement enregistré dans le dossier des "*.xlam"
je suis ensuite allé dans compléments etc etc
a voir donc si cela peut aider !!! Lol
Bonne continuation
a Plus
Amicalement
Jean Marie

Je ne sais pas qui est le meilleur de vous deux, mais je vous trouve personnellement excellentS
 

Dranreb

XLDnaute Barbatruc
Est-ce peut être pour cela qu'avec vos versions d'Excel beaucoup joignent des .xlsx au lieu de .xlsm en prédendant avoir mis une macro ou un UserForm dedans, parce que l'extension n'est pas clairement indiqué dans la liste des types de fichiers ?
Après bon, on peut discuter le bien fondé d'avoir rebaptisé Complément en Excel 2016 ce qui s'appelait Macro complémentaire dans les versions précédentes.
 

Dranreb

XLDnaute Barbatruc
Bonjour.
Il n'y a rien à faire, je n'arrive pas à ce que je veux: soit il ne remplace pas en mémoire le fichier ouvert par sa version enregistrées sous complément, soit il passe à coté de l'occasion de l'enregistrer dans "C:\Users\" & Application.UserName & "\AppData\Roaming\Microsoft\AddIns", pour qu'il puisse être retrouvé parmi les compléments dans Excel.
J'en ai fait une version qui s'efforce de s'occuper de tout comme je veux, en réouvrant le complément créé puis se fermant comme précurseur.
Dites moi si elle s'installe bien.
 

Pièces jointes

  • CBxL.xlsm
    118.5 KB · Affichages: 65

PERSEVERANT

XLDnaute Junior
Re
moi non plus pas de "*.xlam" , mais : "macro complémentaire excel" et même : "macro complémentaire Excel 97-2003"
Donc à voir ! car si tu cherches une référence à ".xlam" y'en a pas !lol
Bonne fin de soirée
Amicalement
Jean marie

Bonjour ChTi160, Dranreb
et à tous ceux qui lisent ces échanges, bien sur
Voila quand on parle une langue que je comprends c'est tout de suite plus clair pour moi.
je pars à la recherche des complémentaires.
Merci à tous les deux
Amicalement
Jean Michel
 

PERSEVERANT

XLDnaute Junior
Bonjour.
Il n'y a rien à faire, je n'arrive pas à ce que je veux: soit il ne remplace pas en mémoire le fichier ouvert par sa version enregistrées sous complément, soit il passe à coté de l'occasion de l'enregistrer dans "C:\Users\" & Application.UserName & "\AppData\Roaming\Microsoft\AddIns", pour qu'il puisse être retrouvé parmi les compléments dans Excel.
J'en ai fait une version qui s'efforce de s'occuper de tout comme je veux, en réouvrant le complément créé puis se fermant comme précurseur.
Dites moi si elle s'installe bien.

ReBonsoir Dranreb
J'ai collé le fichier CBxLxlsm dans le répertoire où j'ai mon fichier.
J'ai essayé d'aller chercher le complément à partir de mon fichier et le système m'indique que votre fichier CBxLxlsm n'est pas un complément accepté !
Cordialement
Jean Michel
 

Discussions similaires

Réponses
6
Affichages
256

Statistiques des forums

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