double clic sur une feuille pour remplir un userform

gadget

XLDnaute Nouveau
Bonjour à toutes et tous,

Voilà, j'ai un problème que je n'arrive pas à résoudre (vous vous en doutez :cool:)

ClasseurA contient mon userform (nommé creations.xls)
ClasseurB contient une feuille dans laquelle l'utilisateur choisira une cellule par double clic (nommé caracteristiques.xls).

Je souhaite, a partir d'un bouton de commande dans un userform, ouvrir un classeur, dans lequel l'utilisateur pourra double cliquer sur une cellule, et lorsqu'il aura cliqué une textbox du userform prendra la valeur de la cellule dans laquelle l'utilisateur aura double cliqué.

J'ai eu donc comme idée d'utiliser la fonction BeforeDoubleClick (dans le classeurB), je récupère la valeur pour la coller dans une cellule du classeurA (ce qui me permet de fermer le classeurB qui ne m'intéresse plus puisque l'utilisateur à fait son choix).
J'arrive bien à récupérer la valeur dans la cellule (sur une feuille qui serait cachée) mais je n'arrive pas à remplir mon textbox a partir de la cellule!!!
probablement que je ne le fait pas correctement, mais je ne vois pas ou je pourrais le faire...

Avant d'utiliser des userform, je faisais tout par feuilles excel et ça fonctionnait parfaitement, mais je trouve que les userform sont plus agréable à utiliser pour les utilisateurs...

explication de mon code:
- userform bienvenue: userform dans lequel l'utilisateur choisi ce qu'il souhaite faire (je n'ai mis qu'un bouton pour l'instant, je m'entraîne :)).
- userform b: userform dans lequel l'utilisateur à la possibilité (par bouton de commande) d'ouvrir un classeur dans lequel il choisira une cellule par double clic.
- module1: déclaration des constantes et variables, + code permettant de copier une macro d'un classeur à un autre.
- module caractéristiques: code contenant les macros qui seront copiées dans le classeur caractéristiques (classeurB).
- thisworkbook: code permettant d'afficher l'useform bienvenue à l'ouverture du classeur principal (classeurA).

pour utiliser ces deux classeurs, j'ai mis des chemins en dur qui utilisent le bureau, il faut créer un répertoire "essai" sur le bureau dans lequel il faut enregistrer les deux fichiers excel (ou modifier les chemins dans la constante workdir du module1)

Merci de votre aide

@+

gadget
 

Pièces jointes

  • creations.xls
    42 KB · Affichages: 93
  • caracteristiques.xls
    14.5 KB · Affichages: 76
  • creations.xls
    42 KB · Affichages: 103
  • caracteristiques.xls
    14.5 KB · Affichages: 81
  • creations.xls
    42 KB · Affichages: 104
  • caracteristiques.xls
    14.5 KB · Affichages: 85

Bernard_XLD

XLDnaute Barbatruc
Membre du Staff
Re : double clic sur une feuille pour remplir un userform

re

pour ne pas te casser les pieds avec des chemins, tu peux utiliser des commandes simples comme
ThisWorbook.Path 'extrait le chemin du fichier contenant la macro exécutée
ou
ActiveWorkbook.Path 'extrait le chemin du classeur actif

si ton fichier de données est toujours situé de la même façon par rapport à ton fichier macro, tu n'auras plus besoin de coder les chemins en dur

@+
 

gadget

XLDnaute Nouveau
Re : double clic sur une feuille pour remplir un userform

Merci infiniment, ça fonctionne parfaitement!!!

entre temps, j'ai trouvé une autre possibilité, je met du code dans la feuille cachée par laquelle je passe (comme tampon) pour récupérer mes cellules double cliquées...je l'utilise avec la fonction worksheet change...

merci pour le conseil d'utiliser les "thisworkbook.path" et compagnie, je pense qu'effectivement ça pourrait m'aider...

Merci encore, je savais bien que mon problème trouverait une solution pas si compliquée :p

Bon week-end à vous tous

@+

gadget

ps: comment fait-on pour clore un sujet réglé??
 

Discussions similaires

Membres actuellement en ligne

Statistiques des forums

Discussions
312 229
Messages
2 086 423
Membres
103 206
dernier inscrit
diambote