RechercheV par la gauche / VLookup
Résolu
hawaïen
Messages postés
54
Statut
Membre
-
hawaïen Messages postés 54 Statut Membre -
hawaïen Messages postés 54 Statut Membre -
Bonjour,
j'ai deux onglets Feuil1 et Feuil2
Feuil1 contient une liste de noms rangés de A1:A10
Feuil2 contient un tableau (A1:B9) associant l'âge des personnes portant les noms
Je souhaite lorsqu'on double clique sur le nom d'une personne sous Feuil1 avoir un MsgBox affichant l'âge équivalent dans Feuil2.
Mon problème c'est que la colonne "âges" est à gauche de la colonne "noms" sous Feuil2
J'ai tenté le code suivant mais sans succès:

La recercheV ne semble pas fonctionner part la gauche.
Quelle solution existe-t-il?
Merci de vote aide,
j'ai deux onglets Feuil1 et Feuil2
Feuil1 contient une liste de noms rangés de A1:A10
Feuil2 contient un tableau (A1:B9) associant l'âge des personnes portant les noms
Je souhaite lorsqu'on double clique sur le nom d'une personne sous Feuil1 avoir un MsgBox affichant l'âge équivalent dans Feuil2.
Mon problème c'est que la colonne "âges" est à gauche de la colonne "noms" sous Feuil2
J'ai tenté le code suivant mais sans succès:

La recercheV ne semble pas fonctionner part la gauche.
Quelle solution existe-t-il?
Merci de vote aide,
A voir également:
- Recherchev vers la gauche
- Windows 11 barre des taches a gauche - Guide
- Les textes ne doivent pas être en retrait à droite et à gauche - Guide
- Windows 7 vers windows 10 - Accueil - Mise à jour
- Qwerty vers azerty - Guide
- Vers quelle adresse web renvoie ce lien - Guide
3 réponses
Bonjour,
La recercheV ne semble pas fonctionner part la gauche.
Si, mais la recherche se fait sur la premiere colonne de la plage, me semble-t-il.
perso, j'utilise ceci:
La recercheV ne semble pas fonctionner part la gauche.
Si, mais la recherche se fait sur la premiere colonne de la plage, me semble-t-il.
perso, j'utilise ceci:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Cancel = True
With Worksheets("feuil2")
age = .Cells(.Columns(2).Find(Target, .Cells(1, 2), , xlWhole).Row, 1) '1 pour A mais vous pouvez utiliser des Offset
End With
End Sub
bonjour Hawaien, F89
autre méthode se déclencha lors du "clic sur une cellule dans A&:10
macro a installer dans le module "feuil1"
autre méthode se déclencha lors du "clic sur une cellule dans A&:10
macro a installer dans le module "feuil1"
Option Explicit
'------------
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect(Target, Range("A1:J1")) Is Nothing Then
On Error GoTo inconnu
MsgBox Target & " est agé de " & Sheets(2).Columns("B").Find(Target).Offset(0, -1) & " ans"
Exit Sub
'gestionnaire erreur
inconnu:
MsgBox Target & " inconnu"
End If
End Sub
Merci à vous deux !
J'ai réussi à obtenir le résultats souhaité même si la gestion d'erreur pourrait être optimisée je pense:
J'ai réussi à obtenir le résultats souhaité même si la gestion d'erreur pourrait être optimisée je pense:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Cancel = True
With Worksheets("Feuil2")
On Error GoTo MyErrorHandler:
aGe = .Cells(.Columns(2).Find(Target, .Cells(1, 2), , xlWhole).Row, 1)
If aGe = "" Then
MsgBox "Impossible de trouver l'âge de " & Target
GoTo MyErrorHandler
Else
MsgBox "L'âge de " & Target & " est " & aGe
End If
MyErrorHandler:
If Err.Number = 1004 Then
MsgBox "Impossible de trouver l'âge de " & Target
ElseIf Err.Number = 13 Then
MsgBox Target & " n'est pas dans la liste"
End If
End With
End Sub