Renvoyer une valeur par clic?

Fermé
Tim68000 - 10 juin 2014 à 11:39
gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 - 12 juin 2014 à 11:31
Bonjour,


J'aimerai savoir s'il est possible de renvoyer une valeur d'une cellule à une autre par un simple clic

Je m'explique

Je réalise un outil sur excel, j'ai notamment 2 feuilles :
La première est la feuille principale ou l'on rentre les données et ou il faut un numéro de série (entrée en A1)
L'autre est une outil de recherche dans une base de données qui permet à l'utilisateur de trouver un numéro de série particulier.

J'aimerais qu'en cliquant sur un numéro de série de la base de données, celui ci soit renvoyé directement dans la case A1 de la feuille principale.

En gros cliquer sur une case de la feuille deux pour que la valeur soit renvoyée en A1 de la feuille un.

Existe-t-il une telle fonction sur Excel 2007?

Merci beaucoup et bonne semaine!

8 réponses

gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 4 692
10 juin 2014 à 12:11
Bonjour,

Cette fonction n'est pas une fonction native d'excel mais tu peux très bien faire une macro pour la réaliser.
Si tu pouvais nous mettre un exemple de structure des données, sans éléments personnels, avec les résultats souhaités expliqués clairement, se serait plus facile de t'aider.
Pour communiquer ton classeur tu le télécharges sur https://www.cjoint.com/ et tu mets ici le lien obtenu.
0
Le site est bloqué par l'entreprise..

Je vais vous montrer une image, et sinon je le ferai depuis chez moi.
0
Tim68000 Messages postés 15 Date d'inscription mercredi 14 mai 2014 Statut Membre Dernière intervention 12 juin 2014
10 juin 2014 à 15:05
En feuille 1 il n'y a rien, je veux juste y renvoyer la valeur du numéro de série de la feuille 2 sur lequel j'aurai cliqué

Voici la feuille 2 :



On trouve une liste de numéro de série (>30.000 dans le vrai outil) et un outil de recherche géré par macro qui filtre la base de données.

J'aimerais donc qu'en cliquant sur le numéro de série de mon choix (donc dans la colonne B), soit renvoyé dans la feuille 1 en A1

Est-ce plus clair?

Je suis désolé, je ne peux pas du tout copier les informations de mon vrai programme.

Merci beaucoup !
0
gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 4 692
10 juin 2014 à 18:33
Bonjour,

Dans la feuille 2 tu mets cette macro et le renvoi devrait fonctionner :

Private Sub Worksheet_SelectionChange(ByVal sel As Range)
If Not Intersect(sel, [B:B]) Is Nothing Then
If IsNumeric(sel.Value) And sel.Value <> "" Then
Sheets("Feuil1").[A1].Value = sel.Value
End If
End If
End Sub

Si le nom de ta feuille 1 est différent de "Feuil1" tu rectifies ;-)
0

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

Posez votre question
Tim68000 Messages postés 15 Date d'inscription mercredi 14 mai 2014 Statut Membre Dernière intervention 12 juin 2014
11 juin 2014 à 08:56
Bonjour,

Merci pour l'aide !

Cependant ça ne marche pas... j'ai écrit ça dans la console de macro, mais rien ne se passe.

Cela est peut être du au fait que les numéros de série comprennent également des lettres et des caractères ("/" et "-"). (If numeric....)

Cela marche pour un simple clic sur la case en théorie? Merci !
0
Tim68000 Messages postés 15 Date d'inscription mercredi 14 mai 2014 Statut Membre Dernière intervention 12 juin 2014
11 juin 2014 à 16:47
Je me permets de vous relancer comme ce sera demain mon dernier jour de stage.

Cette option que je souhaite ajouter n'est pas indispensable mais serait très pratique pour les utilisateurs finaux du projet.

Merci beaucoup et bonne soirée
0
gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 4 692
Modifié par gbinforme le 11/06/2014 à 21:11
Bonjour,

Tu me mets un exemple numérique puis tu dis "les numéros de série comprennent également des lettres et des caractères ("/" et "-")", c'est effectivement incompatible !

Remplace :
If IsNumeric(sel.Value) And sel.Value <> "" Then
par
If sel.Value <> "" Then

Si tu veux revenir sur la feuill 1 tu rajoutes
Sheets("Feuil1").activate

avant les end if

Toujours zen
La perfection est atteinte, non pas lorsqu'il n'y a plus rien à ajouter, mais lorsqu'il n'y a plus rien à retirer. Antoine de Saint-Exupéry
0
Tim68000 Messages postés 15 Date d'inscription mercredi 14 mai 2014 Statut Membre Dernière intervention 12 juin 2014
12 juin 2014 à 09:10
Merci !

Cela ne marche cependant pas encore.
Que veut dire la première instruction :
"If Not Intersect(sel, [B:B]) Is Nothing Then"
?


Merci encore

Timothé
0
gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 4 692
12 juin 2014 à 11:31
Bonjour,

Cela ne marche cependant pas encore.

et pourtant si tu appliques correctement le code il doit fonctionner :

https://www.cjoint.com/?DFmlDnilcRf
0