Liste déroulante avec données dans un autre dossier

Résolu/Fermé
OOLIVIZY Messages postés 28 Date d'inscription mardi 9 avril 2013 Statut Membre Dernière intervention 6 septembre 2013 - 9 avril 2013 à 19:48
Le Pingou Messages postés 12213 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 1 décembre 2024 - 11 avril 2013 à 18:30
Bonjour,

Ayant été super content des résultats obtenus ici, je reviens vers vous pour avoir des informations sur deux questions:

1ère question: est-il possible de créer une liste déroulante avec des données provenant d'un autre classeur ? (genre une base données excel) ?

2ème question: si oui, comment ?

:)
Merci pour les informations.

8 réponses

Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 416
9 avril 2013 à 19:56
Bonjour
directemEnt d'un fichier à un autre, je ne pense pas.
la solution serait peut être de reporter dans le fichier N la liste du fichier N-1 par égalité;
Crdlmnt
0
OOLIVIZY Messages postés 28 Date d'inscription mardi 9 avril 2013 Statut Membre Dernière intervention 6 septembre 2013
9 avril 2013 à 20:04
j'y avais pensé mais ca devient embetant.. En fait, ce que je voulais faire, c'est proposer une liste déroulante des clients et mission dans les feuilles de temps des collaborateurs..
Comme ca, ils pourraient choisir le client les concernant, les missions et mettre en face le nombre de jours travaillés, que j'aurais récupérer grâce à un programme..
Mon but ici était de limiter les erreurs en proposant un seul type d'orthographe !!

Merci à vous pour vos réponses.
0
Le Pingou Messages postés 12213 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 1 décembre 2024 1 452
9 avril 2013 à 23:09
Bonjour,
Dans ce cas avec VBA.
0
OOLIVIZY Messages postés 28 Date d'inscription mardi 9 avril 2013 Statut Membre Dernière intervention 6 septembre 2013
10 avril 2013 à 10:04
Bonjour Le Pingou,

Je suis preneur pour VBA mais je dois avouer que je ne suis pas le roi avec. Si à tout hasard tu pouvais m'apporter quelques idées/aides, cela serait la bienvenue !

Bonne journée à tous.
0
OOLIVIZY Messages postés 28 Date d'inscription mardi 9 avril 2013 Statut Membre Dernière intervention 6 septembre 2013
10 avril 2013 à 10:27
Voilà des fichiers pour l'exemple..

J'aimerais que le fichier Etimesheet propose dans les cellules en face des clients et missions (colonne B, surlignées) une liste déroulante avec les informations contenu dans le fichier eTest, onglet "Table_Missions"
Fichier etest: https://mon-partage.fr/f/D6zS6vee/
Fichier etimesheet: https://mon-partage.fr/f/5nOIi4qK/

Bien à vous :)
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 310
10 avril 2013 à 11:09
Bonjour,

peut-^tre à coté de la plaque

validation de données externes
https://www.cjoint.com/?3DkliRBohdp

les 2 classeurs doivent être ouverts
0
OOLIVIZY Messages postés 28 Date d'inscription mardi 9 avril 2013 Statut Membre Dernière intervention 6 septembre 2013
10 avril 2013 à 11:17
Bonjour,

C'est une partie du problème.. car elle va pouvoir permettre d'aller chercher l'info ailleurs.. Mais il faut que je pose une liste en cascade pour le service maintenant
0
Le Pingou Messages postés 12213 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 1 décembre 2024 1 452
10 avril 2013 à 17:49
Bonjour,
Merci pour les fichiers.
Toutefois, la proposition de michel_m fonctionne très bien, je pense qu'il suffit de la compléter pour vos besoins.
Concernant vos 2 classeurs, je suppose que [eTEST1.xlsm] est la source pour les listes déroulantes qui seront utilisées dans [ETIMESHEET.xls] plages : [Client] et [Service].... ??
Question : est-ce que les 2 classeurs se trouvent sur le même PC.... ?

0
OOLIVIZY Messages postés 28 Date d'inscription mardi 9 avril 2013 Statut Membre Dernière intervention 6 septembre 2013
10 avril 2013 à 18:00
oui c'est ca :)
Pour le coup, j'ai pas réussis à comprendre comment adapter le code à mes besoins..
Mais la liste déroulante servirait pour les plages clients et services oui.
Les 2 classeurs sont pr l'instant sur le même pc, ensuite, le fichier [eTest1] sera envoyé sur une dropbox et les timesheets sur chaque pc des collaborateurs..
du coup, en intégrant le lien d fichier, ca devrait être bon non ?

Merci pour vos réponse!
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Le Pingou Messages postés 12213 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 1 décembre 2024 1 452
10 avril 2013 à 22:54
Bonjour,
Que comprendre par le terme anglais [dropbox] ...?
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 310
11 avril 2013 à 08:36
Bonjour,


Ci joint proposition peut-^tre provisoire

1/ j'ai passé le fichier cible en version 2007 car ce n'est pas trop conseillé d'avoir des versions différentes (source etest1 était en XL2007) pour une m^me appli, d'autant plus que le moteur de connexion est différent entre xl<2007 et XL2007

2/ Les données venant de Etest1 -restant fermé- onglet "table_mission" sont inscrites dans une feuille tampon

3/ il devrait être possible de se passer de cette feuille tampon en affectant directement le combobox1 puis le combobox2 mais si seulement ca t'intéresse (il y a longtemps que je ne l'ai pas fait et c'est assez piègé), c'est la raison pour laquelle la connexion et la requete sont déclarées publiques

4/ attention dans la macro aux éléments à adapter à ta structure -voir constante Fichier-. pas très sympa d'annoncer APRES que etest1 sera dans une dropbox ce qui oblige à un code supplémentaire pour éviter les conflits d'accès simultanés....

ci joint etimesheets.xlsm testé avec succès
https://www.cjoint.com/?3DliKes7HSl


0
OOLIVIZY Messages postés 28 Date d'inscription mardi 9 avril 2013 Statut Membre Dernière intervention 6 septembre 2013
11 avril 2013 à 10:02
Bonjour Michel,

Désolé de ne pas avoir communiqué cette info plus tôt, je ne pensais pas qu'elle était importante..
Merci pour le temps que tu m'as accordé, je vais regarder ça dès maintenant.

Excellente journée à tous..
0
OOLIVIZY Messages postés 28 Date d'inscription mardi 9 avril 2013 Statut Membre Dernière intervention 6 septembre 2013
11 avril 2013 à 10:19
Lorsque je fais le process habituel, à savoir le double-clique, c'est le code qui s'applique, il ne prend pas compte du code dans VBA.. Est-ce normal ?
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 310
Modifié par michel_m le 11/04/2013 à 10:57
dans ce que je t'avais transmis, je ne m'étais pas occupé du doubleclic (à sécuriser d'ailleurs: déclenchement de n'importe où dans la feuille) et j'attaquais directement la macro module 1

ci joint version sans feuille supplémentaire
des trucs que je n'ai pas compris (mis en commentaires) dans combobox1_change ainsi que de l'utilité des sendkeys

https://www.cjoint.com/?3DlkYRLZydu
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 310
Modifié par michel_m le 11/04/2013 à 13:55
ajouter dans cette procédure les 2 lignes en gras, merci d'avance

Private Sub ComboBox1_Change() 
Dim Lig As Byte, Choix As String 
  Me.ComboBox2.Clear 

   Choix = Me.ComboBox1 
    
   With requete 
          .MoveFirst 
          Do While Not .EOF 
               If .Fields(0) = Choix Then 
                    Me.ComboBox2.AddItem 
                    Me.ComboBox2.List(Lig, 0) = .Fields(1) ????
                    'Me.ComboBox2.List(Lig, 1) = .Fields(2) ????
               Lig = Lig + 1 
               End If 
          .MoveNext 
          Loop 
    End With 
    source.Close 
    Set source = Nothing 
   
  Me.ComboBox2.SetFocus 
  'SendKeys "{F4}" 
End Sub
0
OOLIVIZY Messages postés 28 Date d'inscription mardi 9 avril 2013 Statut Membre Dernière intervention 6 septembre 2013
11 avril 2013 à 14:19
j'ai un problème.. lorsque j'exécute le module 1, il me fait apparaître un message "Mise à jour impossible. La base de données ou l'objet est en lecture seule".
Le bogage intervient à la ligne .Open
Des idées ?
0
Le Pingou Messages postés 12213 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 1 décembre 2024 1 452
11 avril 2013 à 17:04
Bonjour,
Bravo michel_m, plus rien à faire.
Question en marge, est-ce que cela fonctionne via une [Dropbox].... !

0
OOLIVIZY Messages postés 28 Date d'inscription mardi 9 avril 2013 Statut Membre Dernière intervention 6 septembre 2013
11 avril 2013 à 17:36
Si... je viens de m'apercevoir d'un point...
Lors de l'apparition du userform, on choisit, dans le combobox1, le client..
Mais si on décide de changer le client, il nous fait apparaître un message d'erreur !
Il faut que je trouve comment régler ce problème !!

Désolé Le Pingou, la dropbox est un service de stockage de données..
Il est possible de faire fonctionner le tout mais cela nécessite une "installation sur tous les postes" (modification du chemin en insérant le nom de la session pour chacun".

En tout cas, merci pour tout !
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 310
11 avril 2013 à 17:49
Déplace
source.Close
Set source = Nothing

avant unload me
dans combobox2_change
0
OOLIVIZY Messages postés 28 Date d'inscription mardi 9 avril 2013 Statut Membre Dernière intervention 6 septembre 2013
11 avril 2013 à 17:56
Merci, décidément !
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 310
11 avril 2013 à 18:14
Oui, mais pour ma part j'installerais 2 boutons: "valider" et "annuler" pour avoir un fonctionnement plus souple permettant la ou les erreurs de manipulation (ça, je sais bien faire)

dans valider on retrouverait le code de combobox2 avec en plus,une condition imposant que le combo2 soit rempli

dans annuler
la fermeture de source et nothing
et unload me
0
Le Pingou Messages postés 12213 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 1 décembre 2024 1 452
11 avril 2013 à 18:30
Bonjour OOLIVIZY,
Merci à vous pour cette explication.

0