Croisement de données

Y compris Power BI, Power Query et toute autre question en lien avec Excel
o
ocidius
Jeune membre
Jeune membre
Messages : 17
Inscrit le : 28 février 2018
Version d'Excel : 2010 FR

Message par ocidius » 3 avril 2018, 13:27

Bonjour, j 'ai besoin d 'aides et d'informations

J'ai crée un menu déroulant qui affiche une liste précise " référence"
lorsque je sélectionne une référence la cellule adjacente va cherche la valeur correspondante dans la base de données qui est sa désignation.
Ainsi automatiquement chaque fois que je choisis une reférence j'ai son nom qui apparaît à coté

J'aimerais savoir si c 'est possible de taper le nom à l'aide du clavier dans le nom et qu'il affiche la référence automatiquement et si je tape la référence il affiche le nom ....
Classeur1.xlsx
(9.48 Kio) Téléchargé 9 fois
T
Theze
Passionné d'Excel
Passionné d'Excel
Messages : 4'019
Appréciations reçues : 306
Inscrit le : 26 janvier 2011
Version d'Excel : 2007/2019

Message par Theze » 4 avril 2018, 07:23

Bonjour,

A mettre dans le module de la feuille "Feuil1". La cible est la cellule C6. Dans cette dernière tu entres soit la référence, soit le nom et tu auras en B6 l'inverse si trouvé attention toutes fois aux espaces parasites que tu as dans la colonne B :
Private Sub Worksheet_Change(ByVal Target As Range)
    
    Dim Cel As Range
    
    If Target.Count > 1 Then Exit Sub
    If Target.Address(0, 0) <> "C6" Then Exit Sub '<-- seule C6 est visée
    
    'recherche dans les références pour retourner le nom...
    'elles doivent être seulement numériques donc, pas de lettre !
    If IsNumeric(Target.Value) Then
    
        Set Cel = Worksheets("Feuil2").Columns("A:A").Find(Target.Value, , xlValues, xlWhole)
        If Not Cel Is Nothing Then Set Cel = Cel.Offset(, 1)
        
    'sinon, recherche dans les noms pour retourner la référence
    Else
    
        Set Cel = Worksheets("Feuil2").Columns("B:B").Find(Target.Value, , xlValues, xlWhole)
        If Not Cel Is Nothing Then Set Cel = Cel.Offset(, -1)
        
    End If
    
    'si trouvé, inscrit en B6 soit la référence, soit le nom sinon, inscrit une valeur d'erreur
    Application.EnableEvents = False
    
    With Target.Offset(, -1)
    
        If Not Cel Is Nothing Then .Value = Cel.Value Else .Value = "#VALEUR!"
        
    End With
    
    Application.EnableEvents = True
    
End Sub
Il vaut mieux un qui sait que cent qui cherchent :wink:

Ce forum étant un lieu de partage, je n'accepte pas les messages privés !
o
ocidius
Jeune membre
Jeune membre
Messages : 17
Inscrit le : 28 février 2018
Version d'Excel : 2010 FR

Message par ocidius » 9 avril 2018, 13:33

Je te remercie de ta réponse mais après avoir vu ton code je pense que ca marche pas comme j'aimerais

je te joint le fichier que j 'ai crée:
Test.xlsm
(144.07 Kio) Téléchargé 3 fois
dans la colonne référence tu mets valide une référence tu verras le tableau se remplir automatiquement

j'aimerais pouvoir faire la même chose avec désignation remplissage auto et de la référence aussi
mais d 'apres ton code il prend la première valeur qu'il trouve
exemple j'ai 5 ou 6 types de rondelles si je tape rondelle dans désignation il affiche les 5 dispos

je sais si je donne assez d 'information mais je suis limité dans mes connaissance VBA

MERCI DE VOTRE AIDE EN TOUT CAS
p
patrick1957
Passionné d'Excel
Passionné d'Excel
Messages : 3'122
Appréciations reçues : 32
Inscrit le : 24 août 2015
Version d'Excel : 2007-2010-2016 PC

Message par patrick1957 » 9 avril 2018, 15:15

Bonjour,

un début de solution , tu pourrais peut être faire dans ce genre là ?

P.
Test (4).xlsm
(175.73 Kio) Téléchargé 7 fois
Je fais du géocaching et vous ?
Indentez vos codes VBA, ---> http://www.oaltd.co.uk/Indenter/Default.htm
A lire pour les débutants: http://www.xlerateur.com/divers/2010/05 ... nnees-612/
o
ocidius
Jeune membre
Jeune membre
Messages : 17
Inscrit le : 28 février 2018
Version d'Excel : 2010 FR

Message par ocidius » 10 avril 2018, 11:42

oui c pas mal du tout mais est ce que je peux adapter ça sur mon devis par exemple pour que les cases soit lié
et peux tu m expliquer comment tu as procceder pour arriver à ça ?
moi j'aimerais qqch dans ce style mais en tapant le texte avec qqch de semi auto comme une recherche google pour la feuille devis

pour la fiche article j'aime bcp ton procéder reste a pour chercher par référence aussi
MERCI
o
ocidius
Jeune membre
Jeune membre
Messages : 17
Inscrit le : 28 février 2018
Version d'Excel : 2010 FR

Message par ocidius » 11 avril 2018, 10:35

quelqu'un pour un peu d aide ?
p
patrick1957
Passionné d'Excel
Passionné d'Excel
Messages : 3'122
Appréciations reçues : 32
Inscrit le : 24 août 2015
Version d'Excel : 2007-2010-2016 PC

Message par patrick1957 » 11 avril 2018, 11:19

ocidius a écrit :
10 avril 2018, 11:42
oui c pas mal du tout mais est ce que je peux adapter ça sur mon devis par exemple pour que les cases soit lié
et peux tu m expliquer comment tu as procceder pour arriver à ça ?
moi j'aimerais qqch dans ce style mais en tapant le texte avec qqch de semi auto comme une recherche google pour la feuille devis

pour la fiche article j'aime bcp ton procéder reste a pour chercher par référence aussi
MERCI
Bonjour,

voir les exemples sur l'excellent site de JB: http://boisgontierjacques.free.fr/

P.
Je fais du géocaching et vous ?
Indentez vos codes VBA, ---> http://www.oaltd.co.uk/Indenter/Default.htm
A lire pour les débutants: http://www.xlerateur.com/divers/2010/05 ... nnees-612/
o
ocidius
Jeune membre
Jeune membre
Messages : 17
Inscrit le : 28 février 2018
Version d'Excel : 2010 FR

Message par ocidius » 12 avril 2018, 21:32

ah super merci
Répondre Sujet précédentSujet suivant
  • Sujets similaires
    Réponses
    Vues
    Dernier message